I agree with you and note that PC gaming is the best solution... for a single player. However, I'd rather buy 3-4 new games right now than a GPU.
I have a family/kids and I don't want them all gaming on my one PC as its not conducive to local multiplayer and I'm not putting together multiple high-end computers. Instead its cheaper and easier to buy a console for the TV.
When I had no kids... I had PC gaming only. With a family.. PC gaming is just not the best solution. No local multiplayer. Have to buy n (where n = number of players) higher-end PCs and then you're still in different rooms. i.e. it sucks for local. Consoles are far more family friendly and cheaper under these circumstances.
I'd rather have BF3 on my PC. I've said that since it released. I refused to originally buy BFBC2 due to it being a console build, however, in the end.. it just made more sense for me and my family to buy the PS3 version. So I bought BFBC2 to get used to dual analog and will buy BF3 so I can play locally with kids as well as online with others.... the lower pixel count won't really diminish my fun in the long run.