Universal health care is one of he reasons, in US a good insurance will cut a big chunk of you income (specially if you have a family).
Conservative are against mortgage deduction, Liberal did a lot of promises but at the end, lost the elections. Most of Canadians don't vote and are not interested to ear about these issues, that is another reason...
I don't know in US but here in Canada, we have to pay taxes for all those people that are not!!! some categories like waiters, plumbers, construction workers of many kinds, pipe fitters, etc. are working for cash!!!
We cannot evade because they take the taxes out before we see the check!!!
One solution? make all these activities deductible for everybody! that would be in a perfect world!