There are a couple of common misconceptions about Iran which add to the confusion and to why the west doesn't really "get" what happens in Iran.
One is the idea that Iranians are anti-western or anti-Israel or anti-Semitic. They are not. As Michael Totten quotes in the article linked earlier:
Despite the presentation of the Jew by the Khomeinist regime as the ultimate “other” and object of hatred, anti-Semitism has failed to find a wide audience in Iran. Leaving aside what one might call “vulgar anti-Semitism,” there is no evidence that hatred of the Jews has any echoes in contemporary Persian literature or art. Part of this is because the overwhelming majority of Iranian writers, poets, and other “producers of culture” reject Khomeinism as a form of anti-Iranian fascism. The main reason, however, is that the average Iranian, though he may sympathize with the Palestinians, cannot identify with the Arabs, whom he regards as an ancestral foe. The fact that the only major war that Iran has fought in the past three hundred years was started by an Arab nation – Iraq under Saddam Hussein – makes it hard for most Iranians to contemplate an Irano-Arab front against Israel.
...
It is not easy to present Israel as a threat to Iran, let alone a Muslim world of 1.3 billion people. There is no history of enmity between Iranians and Jews. On the contrary, most historical narratives on both sides radiate with genuine warmth and affection. Ancient Persians helped save the Jews from extermination in Babylon. Jews always remained loyal to Iran, fighting and dying for it whenever given an opportunity. Even when Israel was reborn as a state, few Iranian Jews were prepared to choose it over Iran. Iran and Israel do not face any of the problems that set one nation-state against another. There is no border dispute between them. They are not competing over access to rare natural resources or markets. They do not suffer from a collective memory of hatred and war. Any Western visitor to Iran would quickly realize that Iranians do not hate Jews and would not be prepared to sacrifice them for the Arabs. This lack of a popular base for a policy of hatred and war may well prove to be the ultimate check on Ahmadinejad’s messianic illusions.
Quite in contrast to western delusions about Ahmadinejad gaining votes by being anti-Israel, in Iran he is more likely to lose votes for his general anti-western attitude.
The other misconception is about Ahmadinejad being a "man of the people" with lots of support in rural areas. In fact Ahmadinejad's power base was in the cities, exactly where the big demonstrations are happening right now.
http://www.commentarymagazine.com/blogs/index.php/totten/70412
I think it might be a good idea to consider that the 2005 elections were also rigged.