Crap games, perhaps?
Perhaps the neverending stream of football (and other sports) games, and driving games, and half-baked poorly-made games are the cause.
The stupid DRM forced on legitimate purchasers of games have stopped me buying many titles, and MMOs have taken alot of time and money away from sales of new games.
And so many games get plugged as 'must haves' but are actually pretty awful. Mirror's Edge was a perfect example, a weak product overplugged.
It's also very difficult to get to try out games nowadays. Even the demos tend to focus on multiplayer rather than giving us a taste of the single-player experience so we can feel the atmosphere a game will give us.
The other way games could improve would be to be a pay-as-you-play. So you pay purely depending on how far you get into the game. I'd be much happier paying a £5/£10 starting cost and then the rest of the £35-£45 gets charged as I progress through the game. It should be easy to implement through XBox Live or Games for Windows.