It's television. The game doesn't work on television. It's two 45 minute halves with no breaks. Since there are no breaks, there is no obvious place to put the commercials, so the major television networks won't run soccer. With low scoring, it's possible that you could miss the two or three game determining moments because you are at commercial. The game goes from nothing happening to a goal in a seconds.
If you look at the more popular sports in America, they all have breaks in them. Baseball when the teams switch the field, football when possession is turned over and racing when their is a caution. They all have times where you can go to commercial and come back and not miss much. Even hockey which is very similar to soccer has breaks. When a penalty is called the game stops for a minute or so where they can insert the commercials.
So it comes down to economics. If television networks can't package it to make the big bucks, then people can't really watch the game all the time, therefore they are not interested.
An example of this is how racing has changed over the last 20 years. In the late 80's and early 90's Indy Car Racing was the most televised form of racing because of the hype around the Indianapolis 500 and Nascar was not as popular nationwide. This has changed because Nascar has figured out how to better commercialize the sport. They realized that if you offer more coverage, more people can follow the sport, therefore you get more viewers.