My insurance Company paid a claim to replace the roof after a hail storm. After experts told me that the roof is fine for now, do I have to use the money to replace the roof? They are saing that if I don't do that, they will cancel my policy.
you entered into a signed contract with the insurance company: you pay money in betting nothing will happen, they pay you when it does. Now that's what the money is for. If an expert says there is nothing wrong with the roof, find a new expert--insurance companies do not like to give money out, it's a sure thing something is wrong with the roof.
The money they gave you was to repair the roof - if you use it for anything else, you are breaching the contract.