Let me tell you the real reason behind this all.
Haulage firms used to pay a decent wage to a British lorry driver. When cheap East European labour started coming in, They got rid of their permanent staff and awarded contract to agencies. The agencies then went and hired cheap labour for a fraction of the cost. These agencies did not employ cheap labour as permanent staff with holiday and pension packages. They employed them as day-rate or zero hour contractors.
I have been working in the city as an IT contractor for years and let me tell you how contracting works.
Let's say a perm British lorry driver gets paid £35k pa. His take home pay is £2,289 pm after taxes.
Let's say a contractor British lorry driver gets paid £200/day. He sets up a Ltd company. The contract is between the agency and his company. The take home pay before taxes paid to his company is £4200 ( 5 days a week ) Now, he can decide what his salary should be and pay tax only on that amount. So, let's say this contractor decides his annual pay should be £15k. His take home pay is £1,155 pm and rest of the money sits in his company's bank account and he can use it for sensible work related expenses.
Now, let's say East European lorry drivers were hired for £100/day by the agencies and the drivers were left to do their own taxes and none of them paid a single penny in tax.
Last year, the govt. decided to enforce IR35 on contractors. So, any contractor ( with the exception of a few Outside IR35 contracts ) had to pay the same tax at source as perm employees. So, no Ltd company and setting your own salary business. You also gets charged extra taxes.
Now, these EU drivers... used to make £25,200 pa and all was take home pay.
Now, they get paid £1,500 pm ( through Umbrella ) ~ £18k pa
I have used random figures.
Blame the haulage firms and the agencies for avoiding income tax and also exploiting EU drivers.