One possible cause is that the body drainage holes are blocked so that the rainwater that runs down the windscreen cannot drain away and eventually enters the heater air intake. Remove the debris blocking the drain holes in the skuttle below the windscreen and check that water drains freely. If the drains are blocked a friend successfully used curtain wire to clear them.
This is a common problem on a lot of vehicles, irrespective of make or model. I have had it on my Scenic, my old Cavalier and on my wifes Saxo.
AcmeUK, February 2009