NO, it is not expensive at all, you just can't take it back to your cabin if the intention is to have before dinner cocktails in your cabin. The policy of just about all cruise lines, including Carnival is for liquor purchased in the onboard shop, it will be delivered to your cabin in the evening of the last night of the cruise.
If you want to take a stash home with you, and you have the means to transport it home, then go for it, even if you have to declare and pay a little duty it will be a good deal unless you have to ship it.
If you want it for consumption onboard in your cabin, then for hard liquor you will have to pre order it through their guest services, you can not order hard liquor delivered to your cabin once onboard, you can not order it through the website, it has to be ordered by phone, cost will be about 25 percent or so higher than buying it at your local store. You can attempt to sneak a bottle or two on in your checked luggage, it's a crap shoot, some make it, some don't, but you will get it back the last night, so plan a party.....