@diodesign. Accountability could be the reason for not using a more fine-grained system. Accounting for what data was used where and by who could be quite expensive, and so a one-size-fits-all is simply easier (and therefore cheaper to administer) A per-meg is a way of breaking that down slightly that actually works well enough - at least for most people.
Most people I know, don't moan too much about their internet package (Ok, that's not true when talking about cellular connections!).
A long time ago, postage was based on distance until, I believe Babbage came along and said it would be cheaper to just have a set fee, rather than having to calculate the distance all the time.
Another example would be that I only read the financial section of the Telegraph, but I pay for the whole thing. Why can't I simply remove those particular pages, and only pay for that bit? On so many levels, that just doesn't work.