We've gotten it from room service (suites...so no fee) and also for a fee on some of our Alaska cruises...they would go around and sell it with a souvenir mug out on deck when we were at the glaciers. You can also get it at the onboard Starbucks.
As far as whipped cream and chocolate sauce in the WJ...for us that has varied...sometimes it's available and sometimes not. Our Panama Canal cruise on Serenade this past October they were out of chocolate syrup in the WJ the whole cruise.