My understanding is that it uses vision processing algorithms on a camera nowadays, and works just fine in rain. Snow is an issue because the car can't see the lane markings through the snow -- a human drives through snow by remembering where they were or making a guess.