Just want to share how I have been able to repair my NON CA key fob lock button.
Short story: BMW replaced one of my key fob because the lock button wasn't working but they forgot to take back the broken one. I decided to try to fix it myself and having 3 fully working fobs. It works!
First, you need to open the key fobs. I did it following this method:
Second: I did found a switch supplier on ebay: Tact Switch Micro Push Button 4.2 x 3.2 x H 2.5mm NEW (TS-1234)
got 10 for 3$
Third: I just unsoldered the old switch and soldered the new one, using the same flux.
Fourth: I reassembled the key fob and used crazy glue on the casing.