The only Bachman decoder I have is in my N scale Acela. I use Direct mode programming with my Zephyr and Empire builder systems. Direct mode bworks fine. Martin Myers
Some Lenz decoders do not draw enough current to be recognized by some command stations, and I have heard that some Bachmann decoders exhibit this same behavior. If that is the case, then connecting a 1k ohm resistor across the rail might help.
The decoders in the DCC OnBoard locos are designed to be programmed on the main. If OPS mode doesn't work then try DIRect mode. I usually don't have a problem programming them right on the programming track in PAGE mode. BTW, I'm using a Digitrax Zephyr.
I was told that changing the speed stepping from 128 to 28 helps with some decoders. No idea if that's your problem but it might help