I always get insurance, and never from the cruise line. I like to use insuremytrip.com to compare policies. To me a major factor is medical evacuation coverage. This is often overlooked by travelers but it can cost you big time if you need it, and oftentimes your personal medical insurance won't cover it. Think about how much it might cost you to fly from Cozumel to Miami in a medical jet. You can easily see how it would run $100,000 or more. My wife was critically injured in an auto accident in 2006. They had to fly her 15 miles to the hospital in a medevac helicopter. The bill was $10000 for that short flight. That was 6 years ago.
For my upcoming cruises I decided to let my cruise agent handle the insurance and we went with CSA. I usually go with Travel Insured but CSA is also a good company.