My 2003 Forester experienced a "lazy" (intermittent) side mirror position switch. Being a bit handy, I removed the entire switch panel assembly (door locks, up-down windows, outside mirrors, child lock-out) from the driver's side door's arm rest - it pops out after removing one retaining screw.
I disassembled the side mirror position switch and discovered that it had dirty contacts (make sure you don't lose or damage the tiny spring). I cleaned the contacts with a spray of electronic contact cleaner (you can use pure rubbing alcohol) and a cotton swab. I then sprayed the switch with a little WD-40 to lubricate it. I also lightly WD'd the other switches.
After insuring that the metal contacts were clean and bright, I reassembled the switch, double checked its actions, reinstalled it into the panel and reinstalled the panel into the door's arm rest - and - voila', it worked - and is still working nicely more than a couple of years later.
I did loose the little retaining screw, but the panel snaps securely into place. I could replace it out of my "in house stock" of thousands of little screws, but laziness prevails.
This process is not recommended for the "faint of heart" or those not familiar with switch mechanisms.