There is no comparison. NHL gets better number in almost every category as it should with a 75 year head start. Many generations grew up with the league and passed it down to the next. MLS is still in phase one, building stadiums and working on the first generation of fans. Give it few more years before comparing with any of the established leagues.
Soccer, overall, is more popular than hockey though. NHL gets almost every hockey fans in the country to follow the league. Soccer numbers, on the other hand, get divided into many pieces, because different groups of soccer fans watch different types of soccer. Some only follow the European leagues; some do South American, Mexican, or international soccer (for example, the meaningless exhibition game between the US and Mexico last Wednesday drew higher TV ratings on ESPN2 than the NHL all-star game. Five million more watched on Univision, and 62,000+ attended the game in Phoenix.) Only a small minority of them follow MLS.
A lot of soccer fans tried to follow the league when it started but gave up after seeing all the gimmicks like shootout, backward clock, music during play etc. Football marking all over the field, horrible atmosphere in huge NFL stadiums did their part in turning the fans off. On-field quality wasn't that high to offset those either. Quality improved by leaps and bounds since then but MLS was not able to get them back, neither did it try too hard. As mentioned before, the owners are concentrating on building stadiums, expansion, recruiting investors and establishing a solid youth development system. They are confident, fans will come back with some major player signings and marketing blitz and stay for the better game-day atmosphere smaller stadiums will provide. The 'phase two' is still a few years away (lets not be confused by the Beckham signing), and the NHL has nothing to worry about until then.