You are saying things like "MP is more upgradable", "Try upgrade an iMac", etc, but in reality, what will you upgrade in a MP when it becomes old? You say the graphics card. As you have already bought a top-of-the-line graphics card (available) for the MP, what do you want to replace it with? I bet only one more GPU will be made to work with the current MP, and that wont give you a significant frame rate boost (unlike upgrading from GeForce 7300 to Radeon X1900). Even if they released for example GF8800 for MP, it would cost $800+. So basically, you're stuck with X1900.
Now, CPU. The problem of upgrading the CPU in MP is that there are two of them, so when you decide to upgrade it to, say Xeon 8xxx, you'll have to buy two of them to make them work, and those may not even work with the current MP chipset. As I said in my previous post, games run on 1 core, sometimes they use second for audio processing. The only current game I know that uses 2 cores is WoW, but only in OS X (multi-threaded OpenGL).
Now, RAM. Yes, MP has 8 RAM slots. Why do you need more than two for games? Getting 2 GBs of RAM should be more than enough for current and near future games. Also, MP RAM is so expensive!
Now, HD. MP has 4 HD bays, iMac has one. They use the same interface, so they are the same speed. How many games you want to install if you need more than one HD??? Even 160 gig HD is plenty for gaming. The largest game I know is 5.2 GB after fresh install (UT2004), with addons my copy now weights 9.35 GB. Doom 3 is 1.4 GB, CoD2 is 2-3GB, KOTOR is 4. Games are not like uncompressed HD video capured from camera - they dont need XServe RAID.
So now you ask: "Do I need an "upgradable" expensive MP, when iMac suits me so much better?"