We totally thought the same thing about price, but we were able to manage our costs a number of ways. First, we cruised in September which is one of the cheapest, if not THE cheapest time to travel due to hurricane season and back-to-school. Two, we did a 3-night Bahamian cruise, which is the shortest and cheapest itinerary. Three, we booked 1.5 years out, which is also the cheapest time to book (the cost goes up as bookings increase closer to the sail date). We were also fortunate to have a 2 year old (whose cost is greatly reduced) and a 6 year old (whose cost is also reduced).
We were determined not to spend additional money, since all food and onboard activities are already included. So we didn't purchase any port excursions and, really, our only extra expense were tips.
The only splurge we made was on getting a room with a balcony. Since I get motion sickness, we thought having some fresh air would help. We also figured that while our children were still young and relatively cheap, now would be the time to upgrade. As they get older, they will get more expensive, and any future cruises will probably be a non-balcony room. All in all, the booking cost for our family of four with a Verandah stateroom was $1400 plus tax and vacation insurance (if you want it). As I mentioned, we held really close to that number by not making other purchases or adding expenses. We also received a $25 onboard credit for booking online, which we applied to tips for the cruise.
A WDW vacation is priced more reasonably (especially when there are special offers like free dining), so we will still consider WDW to be our annual vacation spot. However, we loved the cruise so much that we will be looking to return in the next few years or so. We will just keep our eyes open for any special offers or affordable itineraries in the future!