I use roller switches similar to Craig's - maybe even identical - for both homing and over-travel end stops. Have not had any issues with them yet.
I wrote a homing routine to bump into the roller switches, then back off until I saw the "Z" signal on the optical encoder on the servo motor shaft. Nice routine, I made the code real pretty, it was real accurate, but over the years I went back to just using the roller switch as it was close 'nuff, AND I could hear the switch "click" and I knew I was good to go.
Only time it is a problem is when i get junk on the roller. But that is a problem with any switch.
____
Possibly a little OT, I set my limit switch close to the end of travel, and make the LS's target keep the switch plunger pushed in all the way until the over-travel is hit. That way I know when i start to "home" which direction i need to move the axis.