We do this every cruise, for many of the same reasons already cited.
1. We don't want to have to put anything on a credit card.
2. We would probably spend the $ on other things/something else if we just saved it at home.
What we do is try to pay off our cruise at least 6 months in advance. Then, for the remaining 6 months before we sail, we put whatever we can into our onboard account. For our cruise this November, we already have well over $1000 in our OB account (including what we've saved and our OBCs), and we'll likely keep putting some in there each month so that we don't have to worry about carrying money, charging stuff, etc.
Of course, we still bring a credit card just in case of emergencies, but I really like not having a credit card bill for our onboard expenses. We usually put enough in our OB account to cover all of our tips, drinks, Palo, excursions, souvenirs and $ for Shutters. I think last time we spent about $1500 for the week, so our goal is to have that much in our account this time before we go.