I had the same problem with mine on the driver's door. Come to find out on mine it was the plastic latch on the inside of the door wears down on the diameter where it contacts the switch behind the post. Using aluminum roof flashing material, I made a "shim" that wraps around the backside of the post and switch so when the door shut there was enough pressure to activate the switch. As a test, turn your light on auto and push the switch button behind the post and see if your light goes off. If so, you have the same "opportunity" that I had. Good luck.
S. Maykowski, Columbus MS.
My '99 Z3 Alpine White 2.8L Speed Buggy