Actually, MMS doesn't even cost the cell companies a dime.
The marginal cost may be zero. But the phone company needs to charge a high enough price to ration the channel usage so that, on average, the system doesn't become overloaded.
So when SMS/MMS popularity gets high enough that they might have to build more cell towers and more network infrastructure, etc., just to handle the load for SMS/MMS, which could cost billions, they just raise the per message price until people complain instead of overloading the system.
Simple micro-economics.