For some strange reason, the media keeps fudging the facts. Barack Obama won the Democratic primary race because of the way the Democrats divide the delegates: proportionally. But the general election works like the Republican primary race - winner take all. Had the Democratic delegates been apportioned that way, Hillary Clinton would have been the big winner.
When it comes to the general election, it is not how many votes a candidate gets, in absolute numbers, but where those voters are located on the electoral map - not so much a question of demographics as it is a matter of geographics. Al Gore learned that lesson the hard way in 2000.
The country is so evenly divided, within the margin of error of most polls, that in order to win the election, a candidate must get all of their own party's votes, along with a majority of the independent swing voters. It is a safe bet in anyone's book that more soccer mom Democrats would vote for McCain, with his military experience, than conservative Republicans would vote for Obama, with his liberal social agenda. Already, a sizable contingent of disaffected Hillary voters, who feel that the primary was stolen from her, especially in Florida and Michigan, have indicated that they would either switch their vote to McCain or sit the election out altogether. Obama cannot afford to lose a single Democratic vote if he hopes to triumph.
McCain does not have to win every state in order to carry the day. Mathematically, all he needs are the 13 key battleground states where he is currently leading, the very states where Hillary beat Barack. Obama could theoretically win all the other 38 (including the District of Columbia) and still lose the election. It is not so much the total number of votes, as it is where those votes are cast. And any way you slice it, the Electoral College map favors John McCain.