Yes , you can use Disney Dollars on the ships however you really don't need cash for anything onboard except tips for room service
and to settle up your account with guest services at the end of the cruise. Both the cast members who work for room service as well as guest services will be happy to accept Disney Dollars.