Uber and the like claim the workers choose when to work, how much, whether to accept gigs etc. But this is part of the problem: offering gigs at a set rate as take it or leave it is insufficient control. A real contractor would be able to negotiate and adjust this rate.
Uber drivers are employees delivering services core to the function of the business.