Sua segunda regra está combinando 192.168.56.102 como destino, mas a cadeia POSTROUTING precisa ser usada para reescrever o destino dos pacotes que chegam em (--source) de 192.168.56.102 (a resposta).
Altere sua segunda regra para:
iptables -t nat -A POSTROUTING -p tcp -s 192.168.56.102 -j SNAT --to-source X.X.109.118
ou
iptables -t nat -A POSTROUTING -p tcp -s 192.168.56.102 -j MASQUERADE
Você está enviando todos os pacotes tcp com destino X.X.109.118 para a VM linux, então você não pode ter nenhum servidor web escutando este endereço no host dedicado.
Certifique-se de que o apache não esteja escutando no endereço IP que você está encaminhando para evitar que os pacotes sejam processados pela corrente INPUT .
Ou você pode ter um host virtual baseado em nome configurado para o domínio, mas apenas ouvir no endereço (just this virtualhost listening on X.X.109.118) e remover as regras do iptables.
ou seja:
<Virtualhost X.X.109.118:443>
[...]
</Virtualhost>