A far as I can tell, only two reasons are traditionally given:
Passing on a deal to others is more important than getting a financial reward for some people.
Even if one gets no money from the initial referral, they can still earn a small ($5.00) reward from secondary referrals (those that are referred by the people who used the promo code).
Add to that the fact that there are so many $97 dollar referrals around, and many feel that a chance at $5.00 down the road is better than nothing - if they offered less, few are likely to user their promo code. That could have something to do with it.
There are others that offer almost the full $97, but keep back a dollar or two for themselves, which gives people who use those codes a way to reward the promo code offerer while still getting "almost the full $97 off.