Every penny of revenue earned by those companies is by fraud.
There simply has to be some major skullduggery afoot.
The internal GDS seem to be bucking the trend, delivering good services and contributing to OSS. Surely this demonstrates that an internal team is a better way? Even if they don't deliver entire projects themselvea, they could lead them from a requirements, architect and tech perspective, and have sway over which firm gets the outsourced part.