After watching the election, I'm convinced that two things mattered, and they both worked in the Republican's favor:
1) The economy. Aside from all of the things that Obama and Democrats could and should have done while they had the upper hand, the economy is the most difficult thing to spin, and the Democrats have not done it well. These charts have appeared on a lot of political blogs, but I doubt they have been seen on television news. I think Press Secretary Gibbs showed them at one press conference, but every Democrat should have carried around copies of this every fucking day or else gotten it tattoed on their forehead.
But they didn't. So the shitty economy, which was going to be shitty even before Obama took office, has become Obama's and the Democrats' problem. And they haven't done what they could to fix it. They tried to be "bipartisan" and include $350 million of tax cuts in the stimulus bill, but every person who doesn't read read progressive blogs for at least an hour a day is going to see the stimulus as a Democratic program that was spearheaded by Obama, which brings us to problem number
2), which is messaging. There was a poll a few days before the election that said more people thought Obama had increased taxes than lowered them, and most people thought they just stayed the same. This is flat out contrary to reality, but for some reason Democrats are unable to fight it. Yes, there is Glenn Beck screaming every day on Fox News, but Obama is the fucking President of the United States. People listen when he talks. People listen to the Democratic leadership in Congress when they have enormous fucking majorities. But none of them try to counter this perception. These polls are taken as a reality that Democrats have to deal with, and therefore Democrats have to compromise progressive principles even further to "compromise" with Republicans, and on and on it goes.
And no, I don't make the mistake of thinking that all, or even most, Democratic politicians actually believe in those progressive principles. It's much easier for an elected official to make money by siding with the rich guys and corporations. The thing is, they're Democrats. The people that vote them into office aren't generally the rich guys, or the white guys, or whoever. It's the poor people, the minorities, and the young voters that put them there. And despite how much the politicians undoubtedly want to make money, I suspect that their urge to actually win elections is even stronger, and more Democrats will win more elections when more Democrats provide a clear progressive view.
But as it stands now, Democrats seem to want both. Some Democrats want to please the corporations and lobbyists so they can raise huge amounts of campaign cash, but they can't get re-elected when the Democratic base doesn't give a shit about the elections. And as mentioned above, when Democrats have tried to get the message out about the legitimate progressive accomplishments of the past two years, they simply can't do it like the Republicans.