Not entirely wrong, but not entirely correct either.
Re: NASCAR, your point only applies to the inner-cities. There are extremely successful tracks in New Hampshire, Indiana, PA, Delaware, upstate NY, Michigan. There is even a proposed track for the Meadowlands, right across the river from NYC. The popularity is definitely there, in many areas, but perhaps not among your associates.
Re: hockey, you're also not correct. Hockey popularity follows team-success. Rangers, Bruins etc. have loyal followers from decades of success. More recently the Devils' success has made them a hot ticket. NY loves hockey. But the Isles are another story... pathetic franchise = fan apathy. I lived in CT, where the old Whalers couldn't get 1,000 fans per game... now I'm very close to Raleigh, where the same team (with the same owner) is selling-out on a regular basis. The Panthers are quite popular in Tampa. The Pens were once great but now can't make a dime. Even the Flyers suffer at the gate at times.
REAL hockey fans are rare. Casual hockey fans are fickle bandwagon-jumpers. It's not geography or weather-related; it's about fielding a good team. Hockey fans want winners.