Probably because the vast majority of apps still run fine on the legacy devices. My wife has a 3GS (almost 3 years old now), and apart from Siri and a tiny amount of high-end games, it does everything my 4S does - if a little slower, and slightly less crisply. They both have the latest OS version, and every app I have on my phone runs acceptably on hers.
Can Android say the same thing?
I agree that it's a bit of a pain having to have both the low res and high res graphics bundled in a single app version, but this issue isn't one of legacy - it's the same on a 2 year old iPad 1 as it is on a brand new iPad 3. If you've only got 16GB on it, you're possibly going to run into space issues with these new larger apps.
No, these are completely different problems. First of all statement about last month's device being legacy is false.
iPhone 3GS was almost three years ago and still supports the latest version of iOS.
This is the problem for Android—just compare adoption rate and share for the lastest versions of Android. Even some new Android devices just about to be realased don't support ICS.