Love him or hate him, you know exactly what you're getting with Bush. Unfortunately, a lot of people share those values.
Kerry's failure is the same as Gore's. I think a lot of people felt he didn't provide enough of a true alternative. He says "we'll win the war on terror but do it differently". I suspect a lot of the votes Kerry got were simply protest votes.
My vote was, for all intents and purposes, a vote against Bush. I guess in retrospect that's a terrible way to think about it. For all I know, Kerry could've been a lousy president, but I was willing to take my chances. A lot of people weren't.
The mind of the American left during this entire campaign, in my opinion, never seemed to be about winning a Kerry presidency as much as it was about preventing another Bush presidency. You just can't run like that.
As it was, he nearly pulled it off. But Bush's people are smart. I hate to give Republicans credit, but I have to. They are really, really ruthless when it comes to getting what they want.