The hotel programs already offer points per dollar, why not airlines?
Is it fair for someone to pay $300 from NY to LA and someone else pay $500 for NY to Chicago and get so many fewer miles? Distance of travel has little to do with loyalty.
Personally, I like Southwest's model of segments flown.