Allowing the source IP address to be set to anything is actually how things are supposed to be set up. When you have a home computer that is connected two different ISPs, it usually doesn't work without networking hacks because the ISPs block source IP addresses that don't belong to their respective networks. The computer is supposed to be able send packets out though either ISP, and load balance all outgoing packets across both ISPs. Even without having a proper multi homed network with a dedicated IP address range that's part of the global IP routing table, you should still be able to load balance outgoing packets across multiple ISPs, if they didn't block it. So there are legitimate uses for allowing any source IP address to be set.
In a rented server environment, you're locked in to their network so there isn't as much use for this, but I imagine that there are network testing situations and network tunneling applications where changing the source address is still useful.
What those companies may actually be doing is monitoring for changed source IP addresses rather than blocking them. If your VPS is sending out spoofed IP packets, they'll be notified and they'll investigate your VPS for spam. It's actually a really good system!