The breathable covers that they sell in Halfords have served me well for the last year and a half.
If you buy a completely waterproof cover then you can only keep it on the car for 2-3 days as it'll get moisture underneath.
If you want it on the car for longer, then you'll need a breathable car cover. It'll protect the car from the elements but will allow any moisture under the cover to evaporate through it.
As for scratches, as long as the car is cleaned and no dirt is on the bodywork, it'll be fime. I've kept my Megane covered for up to a month and its still spotless!!
Also for fitting onto the car, although some of them may not be taylor made, they can be secured with elastic straps so shouldn't be a problem. Only issue I've had is when its an especially windy day, gotta keep and eye on the corners blowing up.