The correct answer to this question is that in the us and caribbean - they tend not to have to pay port charges for docking - whereas they do in europe - hence the price gets passed on.
Seems to me that, as a rule of thumb, American cruises cost $50 - $100 per day when UK ones cost £100. American prices may notinclude service,port charges,transfers, etc. whenUK ones do. America sites seem to block one booking at American prices.
For years practically everything you purchase in the US is the price they pay in dollars we pay in pounds. American sites do not block UK cruisers from booking, it's the 'British' companies like P&O, Princess that do the blocking. Go with the majority of other lines & you can book at US prices.
Fuel costs in Europe are much higher than in the USA. Also, ships sailing from the USA tend to cruise for short periods (often 7 days) in the Caribbean where fuel costs again are lower. Many cruise lines sailing from the UK tend to perform rather longer cruises therefore are more expensive to operate. Finally, cruising in the USA is still much more popular than in Europe although the UK is catching up. My experience from living in the USA is that the average American "cruiser" would rather take three 7-day cruises than one of 21 days. I'm not sure this is the cae in Europe.