In the case of open jaw flights, or if there are few or no options, it may be better to book the air through the cruise line. However, that's the exception, not the rule. In most cases, it will be less expensive and more convenient to book your own air.
Some people believe that if they book air through the cruise line, then they cannot be in a situation that they will miss the ship due to delays... that the ship will wait on them if they book through the cruise line for the air. This isn't always so. The ship MAY wait on a group of pax if there are several of them, and the wait time isn't going to push the ship too far out of schedule. However, if you read many posts, as I have, there are plenty of reports out there of people who have booked air through the cruise line, then they had delays, and the ship left without them, leaving them stunned. The cruise line does take financial responsibility for helping to get the pax caught up with the ship. But you would be astounded to hear the stories of the difficulties that pax have in getting this done, and in any case, they are still missing part of their cruise.
Bottom line, in most cases, even if we book with air with the cruise line, we go into the departure port AT LEAST one day early. Pay for the air deviation to go early and get reasonable flights. Always remember that even if it seems more convenient to let the cruise line do all the arranging, YOU are still responsible for your vacation plans, and it's dangerous to abdicate that responsibility to someone else. Stay on top of your arrangements whether you make the air arrangements or you let the cruise line do it.
paul