More than likely it is the switch in the door. The whole assembly has issues with cold solder joints and if your good at this sort of thing, you can disassemble it and simply resolder it.
Or you can get a new switch assy from Rock Auto for about $105 (last time I checked anyway. . ).
EDIT:
Looks like Rock Auto prices went up but you can still get them for $127. It's listed as AIRTEX / WELLS Part # 1S4109
If anybody local has a bad one I would like to get it if your just going to toss it. I'll fix it and send it out to TDR members on a free exchange basis.