VPN's don't use TCP because having a reliable protocol with retransmission inside another reliable protocol with retransmission can cause lots of extra traffic when a packet is dropped and the data gets retransmitted multiple times, once from each of the protocols.