Most ships will strongly discourage you bringing on alcholol on board and you have to pass through a scanner like at an airport and it is taken from you and stored until the last night before you leave the ship when a delivery/collection applies. As far as price we so far have found that compared with home it is not bad but usually 15% is added as a tip for the waiter. We were paying $12.65 (including tip)for a large rum and gin with tonic and lemonade and with the curreny this is around £7 and compared with our usual venue back home where we are charged £5.65 for two singles with mixers it seems a fair price.
Bar prices are expensive & so is the mandatory 15% tip add-on! no you cannot legally bring drink on board, but I know of people who have 'smuggled' it onboard, in theit suitcases. The ship's small print will warn you that you risk refusal of embarkation if it is discovered.
We usually take a couple of bottles of scotch and some mixers . You can buy whatever from the on board shop- duty free. It usually works out at around £12 - 314 a litre (Scotch) but mixers are expensive. Any drinks that you purchase ashore during the cruise are usually bonded until the penultimate night.
When you check inat palma dock to go on island star and escape after going to your cabin go back of ship and go to duty free shop but take bag with you because if buy drink on ship will keep till night before you go hom.