Cabins are larger, but not that much bigger to warrant such a high price. Plus, the 'free' sodas are only available up on the Lido Deck in one area, so it's not like they're 'free' everywhere and it's a hassle to always go to the same place and then wait in line with the kids to get a small plastic cup of soda.
Personally, just my opinion, I think they charge more simply because they know they can get more. Yes, it's a wonderful experience and everything is very nice. From what I've heard, they do pay their staff a bit more because they hire alot of Americans for the jobs that interact with the guests. So, yes, these things would tend to cost more. But parents want to make their kids happy, so they're willing to 'bite the bullet' and pay the extra cost for the Disney experience.
When I compare the overall quality and what you get for the money against other cruise lines and what they offer, I feel they do inflate the price because they know families will pay it, not necessarily because of the actual costs involved. Does that make sense?
In other words, when I look at what we get as adults without kids on a cruise line like Celebrity, I just feel I get an overall better quality of product, but maybe not quite as nice experience regarding the shows, private island, characters, etc.
As I always say, what one person loves, another will hate. So it becomes more about what one person feels is a good deal based on their individual needs, lifestyle, budget, and what type of experience they're looking for. Sort of like sailing on a small ship versus sailing on a mega ship. Or like sailing on a 1-star cruise versus a 5-star cruise. The experiences are completely different. It also can depend on the individual's past cruising experiences; how many, what cruise lines, sizes of ships, itineraries, etc.
Plus, the perception of how good the 'deal' is will play into one's perception of what they got versus how much they paid.
For example, if you were to book a 7-night cruise on Disney in July in an inside cabin, you could be paying about $2500 per person plus tax for an inside cabin. By comparison, if you were to book the same cruise in May, you'd start by paying about $1300. It's the same ship doing the same itinerary, so one might say the cruise in May was an outstanding deal, but the one in July was grossly overpriced. Then again, if you have kids and can only travel in July, then you can obviously only compare the cruises that are available during that time and their prices will become exponentially inflated as well so the difference becomes less noticeable.
Sorry, didn't mean to start a dissertation, but when it comes to prices, it's not an easy answer since there is so much involved in them. However, the one great thing about cruising is getting to try them all so you can experience all the various cruise lines, ships, and itineraries. And the only thing that's really important is how you felt about your cruise, not what someone else thinks or feels about theirs because you're different people with different likes and expectations.