I always recommend using a trained travel agent.
1... if they want to they can always beat the price Carnival offers
2... if something goes wrong and you need someone to carry your case to the cruise line, having bought the cruise from a Carnival employee, you have no one to go to bat for you.
Upgrades have little to do with where, or from whom, you book your cruise. They generally only occur if the cabin category you booked is overbooked... then they entice some with upgrades.