2004 Subaru Forester Vent Control Solenoid Valve Function Problem

My check engine light comes on and the code turns out to be P1443, namely the problem I put in the Discussion Title. I have taken it to my local mechanic 2 times and the Subaru dealer, who is inconveniently far away, 3 times. No one has yet been able to fix the problem. Each time they think they have fixed it and clear the code. But after 50 miles or so when the computer finally is able to check the status of things, the check engine light comes on again. (It’s a pain that this can’t be checked by the mechanics after they think they have fixed it.) First the local dealer replaced my gas cap with a non-standard Subaru gas cap. Then the dealer said the gas cap was wrong, so they put on a Subaru cap. Next time the dealer said they found a spider web in some tube and cleaned it out. Next time the dealer did a smoke test, found a leak and “fixed” it. Next time the local mechanic replaced the vent valve (with a Subaru one). I have so far spent between $400 and $500 on this with no end in sight. Any thoughts on what I should do. Maybe they can do the smoke test again and find another leak, but I am loosing my faith as well as my money. As of February 2009 the dealer said there were no open recalls for this.