First the content provider that is actually offering the customer something of value. Then you have the payment processor that are delivering sms:es. They need have to have separate agreements with each operator to charge their customers so that the purched items actually shows up on the customers phone bill. Each operator may have a different method of charging payment processors. Some charge a higher percentage per transaction, others a higher base fee and so on.
Then you also have lots of shady content providers, who wouldn't think twice about gouging their customers if they can get away with it. That leads to a pricey dispute resolution procedure because someone has to answer when the customer disputes a sky high telephone bill and arrange for chargebacks and so on.
But mostly it's the operators at fault. They charge payment processors a lot for access to their customers and it is not like it is a free market. If you want to accept sms payments from Verizon customers then you have to have an agreement with Verizon no matter what the cost is. They know it, and they charge what they can get away with.