One of the great things about X-10 technology in home automation is that it's cheap. This is also one of the greatest disadvantages too. A prime example is the WS467 wall switch. They do a good job but they break easily. When mine break, I fix them and make them better at the same time. You can do the same if you're handy with a soldering iron.
Update: It looks like the switches X-10 is now shipping now use a good quality switch installed very much like this modification. I've been very pleased with the feel and durability.
The problem: If you open a switch you will find a small piece of springy metal attached to a plastic plunger. When you press the button, that metal piece shorts a set of contacts on the circuit board. Unfortunately that piece of metal is only attached by a blob of melted plastic and maybe a little glue. After repeated use the metal breaks off. If you have a switch that works from another controller but not by its own push button, this is probably the cause. If your switch has local dimming enabled (explained later), this failure will cause the light to continuously cycle from bright to dim and back.
A new button: The metal piece can be completely removed and a new surface mount switch soldered directly to the circuit board. There are a number of switches that will fit in the space. Many of the electronics mail order suppliers such as Digikey carry them. I chose part number PB-73 from All Electronics (thank you to Jim Griggers for the source). Either the switch or the circuit board must be modified slightly for this to fit. I chose to modify the switch because it's quicker. Simply cut off two of the switch leads diagonal from each other then solder the remaining leads to the contacts on the circuit board. Your may need to use a knife to remove what's left of the nub on the end of the plastic plunger so it doesn't stick down too far. After everything is assembled you will have a wall switch with a light touch and a nice tactile feel.
Local dimming: While you have everything apart, you might as well make some other improvements. You can enable local dimming by soldering a small jumper across the set of contacts shown in the picture. With this enabled, you can press and hold the button to cycle through the available dim levels. A normal press of the button will still turn the light full on or full off.
Bulb change disable: You can also fix that pesky slide switch below the push button. It's intended to cut all power to the light when you can change the bulb. But they always seem to get slid over to the off position and my lights don't work as expected. Most of us change a light bulb occasionally with the power on anyway, so I disable the feature. Soldering a jumper between the contacts will fix it and save you from having to reinstall the little metal contact that activates it. I usually just cut a chunk of the metal contact and solder that in place.
A few people have asked for a version of the illustrations in a non-animated form for easier printing. You can find a jpeg graphic with all of the frames on one page here.