A big difference between playing Canada vs. the USA would be income tax. It's going to be north of 50% when playing in Canada.
To get the best hockey players via the draft, your team has to be among the worst for a few years. If you have a consistently middling team like the Leafs, you'll never be able to draft the likes of a Sidney Crosby, and free agents who want to win a Stanley Cup generally go to cities where it's most likely to happen. I don't think Toronto is at the top of the short list.
I looked at some data [1] which shows that CA teams have an average salary ~5% lower than their US counterparts. The 2 teams with the lowest salaries are American.
You are right that the Americans have all our best players though. More than 50% of NHL players are Canadian, followed by ~25% American, and ~8% Swedish.