I am guessing the OP is doing an East coast cruise so many of the ports will be fine with USD
They are used to Americans on the cruises
They are in the UK so maybe exchanging USD to CAD is more of a problem
Most of the ports have an ATM near the port building where they could get some CAD for tour guide tips otherwise use a CC for shopping
Give the crew tips in USD
They will also be stopping in some US ports so can use the USD there