Some travel insurance companies will waive pre-existing conditions IF purchased within a specified time of booking the cruise.
Also if the son had bought travel insurance he would be covered because he was traveling with his mother.
I have seen an argument that you should absolutely always buy health insurance for a cruise because of the possibility of extreme costs (e.g, possibly a $100,000 in medical bills or more) however, it might not make sense to buy travel insurance. The argument is that you have already budgeted for the cost of the cruise so losing the money will not break you and if you add up the total cost of travel insurance for many cruises then in the long run you may be better off taking the occasional loss.