Com o LVS, o tráfego da sua rede passa essencialmente do cliente diretamente para o servidor de back-end. Ter um terceiro host (semitransparentemente) envolvido aqui não é uma configuração de rede normal, e é por isso que é bastante difícil de implementar.
Com o haproxy, o tráfego da sua rede vai do cliente para o haproxy, depois o haproxy para o servidor. No que diz respeito ao servidor, o haproxy é apenas outro cliente. Essa é uma configuração de rede normal, portanto, não há complexidade de camada de rede para configuração (embora haja complexidade da Camada 7, como cabeçalhos X-Forwarded-For). Isso também significa que sua máquina haproxy é um SPOF e precisa ser capaz de lidar com o tráfego total do seu site.