O Iptables está usando uma tabela NAT e a máquina conntrack. Dessa forma, se o seu contêiner iniciar a conexão, ele corresponderá à regra SNAT, gravará na tabela NAT e preencherá a tabela conntrack.
Quando uma resposta está chegando, conntrack sabe (com ip e porta de origem e destino, e seqüência TCP se a conexão é TCP) que o pacote pertence à conexão, e irá endereçá-lo à correspondência NAT correta.
Por conexão, somente o primeiro pacote corresponderá a uma regra NAT, então todos os outros seguirão apenas o mesmo caminho (ou caminho inverso).
Se uma nova conexão estiver vindo de fora para seu contêiner, ela corresponderá à regra DNAT.
O SNAT não pode modificar a porta de origem.