I am not an Accountant and this isn't really an answer, but I will try to explain. Basically, it has to do with how you recognize money that you were paid. If I buy a MacBook for $999 and it comes with Xcode 3, and two years later, I get free major upgrades to the software, then the $999 I paid can't be recognized as revenue in the first year. It has to be spread out over the period of time that I will get free upgrades. If they charge me something for the upgrade, then they recongnize the $999 in year one, and the $4.99 two years later.
If this is all Apple is doing, expect Xcode 4 to be included in Lion. If it's not, they are simply charging for it now.
When you see token $.99 charges for things that should be free, this is the reason Apple does it. It's how they interpret the rules -- and, they are probably right. Since, there is no maintenance yearly charge, they can't keep delivering value to you for the initial price without spreading that money over the lifetime of the value delivery.