I would try resetting the decoder back to the factory defaults.
http://www.dccwiki.com/Decoder_reset
Wherever possible 'I turn off' the DC running capability on the decoders in my locos.
A question, does the loco always run in the same absolute direction? ie does it run forwards no matter which direction you place it on the track? Say it runs to the left, and then you turn the loco, it now runs to the right? When on DC of course.
Oh, and never run DC locos on DCC for any length of time, it destroys the motor, possibly involving the magic smoke too(!)
-Rob