Ok so Ive cut the switch in half and can now see how its supposed to work, Looks pretty flimsy to me. briefly it looks like when the switch is on but befrore the engine runs, power is connected to the spade connector at the top of the switch. this is connected to the spring by means of a simple contact. The bottom of the spring fits into a cup arrangement which in turn bears onto the top of the diaphragm which is in contact with the switch body and then the bengine. circuit then complete and the oil light goes on.
Start the engine and oil pressure moves the diaphragm up breaking the contact with the spring ande so also the circuit and so the light goes out.
At least thats how it looks to me. trouble is the top part of the switch relies on the spring/ contact. any moisture in there and there will be a bit of corrosion which will stopm it working also any damage or sticking of the spring will also stop it working. I know it often happens that the oils seems to get past the seal around the diaphragm and then pisses out all over the place. I suspect in this case the switch still works.
I would have thought something like vaseline in the top part of the switch would solve a few problems with corrosion /sticking
other than that it looks as if replacement is the only option
Here are some pics to show what I found