It is always a good idea to do port research before you go. Decide what you want to see and investigate local tour operators. These days, you can also go on the cruise line website and compare those prices to what the cruise line is offering.
Whichever way you decide to go - it is usually to your advantage to book early. But be sure about the cancellation policies. Most cruise lines allow you to cancel anytime up to 24 hours before the tour leaves. A private operator may not be so quick to give a refund (but they may charge less in the first place).