Your new insurer should give you a bit of a grace period to provide proof of NCD, you can then (if it works out beneficial) cancel with your current crowd and take out new insurance with the new crowd. I did this several times when relocating from one country to another as some moves were at rather short notice. I believe the two or three months Eddie51 refers to is when direct debits are returned unpaid as opposed to you asking your insurer in writing to terminate the policy. Eddie51 please do correct me if I am wrong.
But also bear in mind that you will end up losing out on some NCD if you cancel mid-term. If at last renewal you had 3 years NCD, and you cancel your policy after 11 months, you will still only have 3 years NCD whereas by keeping the policy until expiry (as long as you remain claim free) you would then get your 4 years NCD.
So many variables to take into account, make sure you do your homework.