HMRC could simply the whole thing, by making the erring employer liable for the tax liability
That's actually a big part of the reforms: It shifts responsibility for assessing the status onto the "employer"/client, and also shifts the liability for taxes if wrongly declared outside onto them*.
The problems occur from the fact that:
a) Clients don't understand IR35
b) HMRC's status tool (CEST) doesn't correctly determine status
c) Clients are risk averse
d) There will be no (real) appeal against an inside determination
e) There is no liability for the client if they wrongly declare a role inside
* Actually it's a bit more complicated than that when it comes to standard structures involving agents etc, but it's close enough.