By law they have to. No, I don't agree with that law.
No they don't *really* have to by law, they just chose to because of the law. The law people are talking about deals with how public corporations account for their profits. The corporation has to list how much money they made every quarter, and somewhere in that listing is a detailed accounting saying something like "iPod Touch cost us $200 to manufacture, we sold it for $500, earned $300 profit". The law people are talking about states that if you add unannounced features to a device, then you have to go back and re-list your accounting for all the quarters that that device has been sold, lowering your overall announced profits for the device, saying "iPod Touch cost us $200 PLUS $20 for new feature X to manufacture, we sold it for $500, earned $280 profit, so lower out total profits to date by $2 million". Basically, they have to say they earned less money than they previously announced because they have to consider the entire cost of the unit.
As I understand it (not being legal-minded in any sense of the term), this is to keep companies from announcing huge profits from a new product release and then hiding the actual profits by releasing the real functionality later. For example, say Apple spent $10 million developing a device and sold $6 million worth of the device in its first quarter, before this law they could have hidden that $4 million loss by just not announcing half of the features and releasing them later as a free upgrade, announcing that the device only cost them $5 million to make because they are only counting the features available at launch. This way that first quarter everyone buys lots of Apple stock because their new device earned a $1 million profit. This is the kind of thing Enron did to make people think they were doing amazingly great, just keeping pushing the loss announcements off while they kept getting bigger and bigger.
So anyways, Apple chose to charge for the upgrade as a new product rather than have their accountaints go back and re-do their accounting for the 2007 fiscal year. They didn't have to charge any money at all, they are just doing it to save some work from their accountaints and keep from having to make negative announcements. And they are charging $10 for it just because...they like money
The iPhone isn't involved in all this because Apple announced up front that they were going to be adding new features to the device throughout its lifetime (so investors' accountaints would be prepared for ongoing new development costs).