Just from my own personal experience, Access America had the best rates that I could find and they are definitely better prices than through the cruise line.
I have bought the insurance for every cruise that I have been on except a short 4 day one. I figured that I was definitely going since I was taking my parents with us and my two (very competent) sisters would be taking care of my son. Other than that, as you start to get a little older (40 and up) you start to realize that there are any number of things that could happen to cause a delay or cancellation of your wonderful trip and I just want to be covered in any case.
I will be checking into the yearly policy thought, that sounds great.