i had a similar problem in my E30. Turned out that the switch have a little floating pin (plastic from memory) which snaps and I replaced it with a small nail which I turned into the same profile. it worked fine but the tolerances must be perfect to avoid a button which only sometimes works.