all those extra layers are going to end up making it
more costly in some cases.
Also, parts of contracts can be invalidated. Just because you put something like that in the contract doesn't mean you're not violating labor laws.
Some jobs make more sense to be outsourced, in which case contractors will usually already exist and offer "reasonable" prices that will be cheaper than having a full-time employee around.
Other times it doesn't make sense, but employers will try and convince employees to become contractors, so that a lot of employee taxes end up coming out of the employee's side of things. Of course, the employee thinks that this is necessary to keep their job. The construction and taxi industries are very bad at this. It's exploitation, plain and simple.