I could say it is because a bottle of wine takes up about as much room as a bottle of liquor but they get more servings out of the bottle of liquor, so the wine costs them more in storage space. Or that they have to keep several different brands and types of wine aboard, which again means it takes up space so they have to make it profitable.
But the truth to the question you ask is more likely 'because they can', meaning people are willing to pay the price. If a cruise line could charge $8 for a can of Coors and not impact sales or bookings, they'd do it in a heartbeat.