I dont see how after 4 years of service i didn't get it and people have gotten the early upgrade after 8 months .. you are not the only one that has told me that. Im so frustrated with AT&T.
It's not that hard to understand and it's completely fair. It has nothing to do with how long you have been with AT&T, because I've had them for 13 years back to the old Bell South days. It all has to do with what you pay just for you iphone line. $99 is AT&T's break even point so to speak. This is the point that they have chosen recover the cost above of their subsidy. They don't even have to do this. When you signed a contract you agreed to pay for bill for 2 years in exchange for the subsidy.
Every dollar over that $99 they put towards paying off the subsidy early. The more you pay, the faster you pay off the "loan" they put up for the phone. It's just business, the more you pay the more often they can offer you deals. Like I said they don't even have to do that. They don't have to extend you contract while your still in the middle of one.
Edit: I know sometimes it's doesn't seem fair, kind of like my case where I pay around $65 for my iphone line, had to pay $500 for my 3g on release day. While other who pay the $99+ while people who paid $300 for the same phone and only pay a little more then me are up for the upgrade up to 8 months sooner, but hey that's business.