I have always bought the ones on eBay, the wiring isn't always perfect, but a little heatshrink fixes that. Other then finding an original one thats in good shape they are all basically the same in the aftermarket. I had one fit loose like you experienced as well but its not the switch, its the hole in the dash, its aluminum, and they wear out, the original switch had just a tiny bit of wiggle to them as well, and over the years of getting turned off an on they slowly wallow out the hole in the dash.
What i did was put a few wraps of teflon tape, the stuff you use for sealing up plumbing connections, around the switch body at the very top above the wings that latch it in to the notches, and then i forced it in. I'm sure it will loosen eventually but the guy that owns it has had it like that for three years now!
What was wrong with your original? I have taken the originals apart before, cleaned up the contacts inside them, put in some new dielectric grease, solder back on broken wires, etc... They are repairable unless they really got beat up and broken.
---------------------------------------------------------
1984 Honda ATC200ES "Big Red"
1982 ATC200E "Hondie"
1988 TRX300FW "Project Quad" Still in progress....