1. Population of Sweden. There aren't that many Jrs to pick from, so you can get 3-4 sharp kids out of each generation, but when they get to play Sr. hockey, they get to lump together those 3-4 kids from each age group into one team, so the population factor decreases quite a bit.
2. Not enough money is spent on Jr programs in Sweden. The elite clubs rather spend fortunes (considering their resources) on mediocre, or have-been, players to win or avoid relegation in the two top divisions (Allsvenskan and the SEL) as opposed to grow the talent and give the youngsters the best possible competition they can.
3. Arrogance. For years the Swedes were convinced that the "Golden Generation" was the ticket to national and international hockey success. Well, despite winning the OG gold in '06, the GG was a bust, and Swedish hockey took a bad blow and lost kids to other sports such as soccer, golf, basketball, you name it, as the hockey stars were labeled as primadonnas making excuses.
4. Lifestyle. It really is getting harder and harder to play hockey in Sweden. 20 years ago, kids grabbed their skates, helmets and sticks and went out to the local park or pond and PLAYED hockey, which kept the momentum and the enthusiasm for the sport alive. These days, they are sitting in front of their X-boxes, and eventually depending on the parnets income and availability, they go to hockey PRACTICE... let's face it video games are a lot easier and convenient for a parent to nurture and karate a lot less expensive (many nations battle this problem, of course, but the smaller nations get hit a little harder as the crop of players were fairly small to begin with).
I could probably list another 4-5 reasons, but this is way longer than anyone cares to read as it is.