Why don't flies avoid the motorway?
Flies can and do evolve quickly thanks to a short generational time. However, your question seems to stem from a misunderstanding of what evolution entails.

Evolution occurs when the genome mutates. Why it mutates isn't particularly relevant, but a gene (or genes) mutates and as a result of that mutation a characteristic of the organism changes. It doesn't have to be a big change. Maybe a single protein somewhere operates 2% less efficiently, giving practically no outward signs of evolution. Sometimes it can be big - changes in coloration, changes in sensory perception, lifespan, etc.

In order for mutations (beneficial or detrimental) to have a significant effect across an entire population, the population itself has to be fairly small or the mutation has to give a large advantage over the old version.

Flies are not avoiding motorways because a mutation that specifically codes "AVOID CARS" is going to be very unlikely given that it would you would first have to encode what a "CAR" is in order to avoid it. That probably won't happen because on the time scale that evolution usually acts over very large populations (which flies have) we won't be driving cars by the time necessary for deaths due to cars has a serious effect.

Flies have huge populations and breed extremely quickly, so even if a few million are killed by cars, it doesn't put a dent in their population numbers. There's no reason for the change to occur. Combined with the extreme difficulty of actually encoding a gene specific to cars, the odds are it just won't happen in any realistic time-frame.