On a lot of liability policies you may find that if you cancel the policy then there "may" not be any return premium. The reason for this can be that the policy is still active and the insurer may be liable for claims on work you have already done while the policy was active, up to 3 years (sometimes longer) after the policy was lapsed or canceled.
If an insurer cancels a policy because they are not prepared to take on the risk then you will usually find that the insurer will cancel the policy pro rata and you should get a return premium on the amount of policy that has not been used.
It will all be in your policy wording, that's why it is always important to read your wording when you have received your policy, you can cancel a policy within 14 days of receiving the wording and schedule, if you don't agree to the terms within the policy wording and you cancel the policy within the 14 days,it will be canceled pro rata less a reasonable fee. so if you cancel after 3 days of cover you will only be charged 3 days of cover plus the reasonable fee
"Some" firms, make most of their income from fees, this is why "some" firms can offer you a low cost insurance online then in the event of a cancellation or a change they will charge you a large fee. the key is to read your wording and check your cover when you receive the policy wording and schedule.
An annual insurance policy is a contractual agreement for a year, if you wish to cancel that yearly policy you cancel it as per the terms of that contract, so read the terms, you will usually find your specialist insurers or your local Broker are usually a good quality insurance and they normally don't charge the earth on fees. But you must always check your policy to see if it covers you for the things you want covering for.
The fee for canceling the policy with 14 days must be a reasonable one, this is because you have not yet agreed to the fees within the terms of the wording, unless it has been explained to you already i.e over the phone,fax or if it is a renewal and the terms have not changed.
I hope this has helped,