Suponho que talvez a tabela de filtros não seja atingida pelo tráfego da VPN. Depois de alterá-lo para FORWARD, tudo funciona como esperado
iptables -t nat -A PREROUTING -i ppp+ -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -A FORWARD -i ppp+ -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -i ppp+ -p tcp --dport 3128 -j ACCEPT
iptables -A FORWARD -i ppp+ -j DROP
iptables -A FORWARD -o ppp+ -j DROP