Probably never been tried, but it would certainly make game developers think twice before releasing untested and non-functioning games. This is just one of many over the years.
Course it could stifle the smaller game developers, but they generally release functioning games.
I know a lot of developers release a quick patch soon after a game is released, as there is a time gap between released to production and when it appears on store shelves, but there is no doubt that a non-functioning game was released to production by Meier's group, and took quite awhile before the patch released, and even then, game only worked for some, most not. And here we are 6 months+ later, and still no patch for those that can't even get the game to run.
Yes, a good kick in their butts might just be what is needed.
If people could sue over bugs in software, then Bill Gates wouldn't be so rich.

Like warpstorm said, the more complex a piece of software (games included), the harder it is to find a bug. Sure, something like int main(void) { cout << "Hello World"; return 0; } isn't gonna have that many bugs, and doesn't really need to be tested that much. Anyone who's taken a Software Engineering class knows this -- they talk about bug testing and exploring as many "paths" in the software. They do test the most important paths (the ones that the user, or player will most commonly do, as well as extreme ends).
The problem is compounded when you have multiple PC configurations. Maybe in a controlled setting, a game works with an Athlon processor, and in another it works with a GeForce video card, but they may not work together if one version of a card is used with another version of a driver. This is where all of the graphical bugs come in. Not all graphical bugs are the result of the software or game, but maybe due to an outdated card not communicating with the latest version of DirectX, or maybe a new card does something a bit differently. It's always funny to see people getting Windows Vista and then screaming, "Firaxis is stupid! They made a game that didn't work on Vista!", when the operating system hasn't even been out during development (betas don't count!).
It basically works like this --
[ Game talks to a graphics engine. ] --> [ Graphics engine talks to a graphics platform (i.e., DirectX) ] --> [ DirectX talks to the current video drivers on how to communicate with the hardware. ] --> [ Drivers translate for the hardware ] --> [ Hardware displays the images as it interprets it. ]
Between the game and the users, there's so many different things that can be distorted. Long gone are the days when programmers could simply create a few hundred lines of assembler code to talk directly to a video card. Now, gamers want 3D, and making that from scratch could delay a game 5 years atleast. (Even at that, some assembler code, like ModeX, doesn't even work on a Windows XP platform due to interrupt codes that Windows uses and overrides whatever code you put. i.e. int13h)
Then there's the publisher. Sometimes the publisher wants a game out "NOW!", regardless of any bugs that may still be in the system.