And there is a legitimate gripe to be had if the activity you're engaging in is legal according to the jurisdiction you live in but the IRS treats it as an illegal enterprise yet still demands compensation. The way marijuana is treated at the Federal level in this country is unbelievably stupid.
Be that as it may (the stupid part), federal law supercedes state law. Legal or not legal in your jurisdiction doesn't matter, nor does the IRS even care. The IRS doesn't really care about how your income is earned, just that you need to pay taxes on the income. The regulations that govern exemptions and deductions are based on federal law. Very simple really. The IRS is doing exactly what it should be doing.
Now if you want to talk about changing the federal law, that's another discussion entirely.
"It's illegal; we won't arrest you for it, but we will tax you as though it is a legitimate business but let you claim no deductions or exemptions. Suck it!" Absurd.
You're mixing entirely different parts of government together. The state government says it's legal, federal government says it's illegal. That means you can can prosecuted for it as a federal matter, but not by the state. The IRS is not law enforcement, they handle tax collection.
Let the people claim the tax deductions any other business owner would and you'll actually see a lot more revenue coming in at the Federal level because you won't have to waste taxpayer money prosecuting people who will never be able to pay you the exorbitant amounts the Feds are asking for.
That's back to the discussion of changing federal law. Until such time as that happens, the IRS can't just "let the people claim the tax deductions" because you can't claim expenses from illegal activity for deductions. They don't make the rules.