Booking a cruise is not like buying a movie ticket. You need to know how to choose cabin location, onshore excursion, dinning reservation, air package, etc.
If you know what you want, online website usually offers lower price. But if you need someone to guide you, then talk to a cruise specialist. And please remember that most of the regular travel agents do not know much about cruise.
I have booked with expedia.com and cruise.com. Both a good, cruise.com offered better price in most cases.
I have also heard good things about cruisesonly.com.
Though I believe the only way to get service from them is via email, they don't even have a phone# for you to call. But they keep the price low.
Remember to read the fine print, and price quoted usually doesn't include tax, port charge, govn fees,
insurance, etc. Also add $10 per person per day for tip.
There are lots of tricks to make cruise more enjoyable, so if you do decide to go, I can share them with you if you are interested.