I would suggeest that you take a combination of US $ and Sterling and use a credit card for on board spend this makes it easier settling your onboard account at the end of your cruise.One point do not be tempted to take East Caribbean or BarBados $.The US $ is accepted everywhere in the Caribbean.There should be on board exchange facillities and you should expect to have a safe in your Cabin
Take low value dollers, 1s, 5s, 10s, 20s for use on beach and local beers,or you are likely to get change in local currency.
You will need dollars for spending money when ashore shopping or on excursions. We always take some cash in dollars with us usually around $100 then use dollar travellers cheques on the ship to get cash if we need more this way buying them at home you will get a better exchange rate than on the ship. All your expenditure on the ship is charged to your seapass account so you rarely need cash. Thomson accept Switch/Maestro; Visa Electron; Solo and Delta debit cards although we normally settle our bill at the end of the cruise using a credit card which is also handy for purchases ashore in the Caribbean. I have never used a debit card in a ATM abroad as never needed to but you should unless others advise otherwise be able it to withdraw money from the machines but it will be there local currency and not dollars which isa bit limiting.