1. Taxes are generally much higher in Canada, so most Canadian teams can't really bid for free agents on equal terms with their U.S. counterparts. This came up last year when elite goal-scorer Steve Stamkos re-signed with the Tampa Bay Lightning for less than he could have gotten on the open market. The fact that Florida has no income tax was a major factor in his decision.
2. Hockey may be a popular sport in Canada, but a lot of their players simply prefer to live in warmer climates in the winter.
3. Canada has the same problem with "hockey oversaturation" that has been an obstacle for success for NHL teams in Minnesota over the years. There are so many people who play hockey and eat/sleep/breathe hockey, and so many different teams at various levels from mites up to juniors and collegiate level, that few fans are willing to pay for overpriced NHL tickets. The Minnesota North Stars couldn't draw crowds in the Twin Cities area before they moved to Dallas, and yet the same arena where the North Stars played would be packed to the roof every day for 10-14 days for the state high school hockey tournament every spring.
Certainly, he has flaws and could use some geography lessons (in one article, I’m not sure if it is this one, he suggests a Thunder Bay-Sudbury team, which wouldn’t work even when the roads aren’t icy), but for all that says a great deal worth thinking about.
One other thing that he misses is that a Canadian team from no where Americans have hear of might serve to reduce the prestige of the NHL as a whole.
Nate Silver does not crunch numbers. He doesn't do it well. He was lucky once getting like 49 out 50 states. He missed everything this year -- NBA, NCAA, Election. He wrote a 2015 article how Trump would never be President.