Steve,
Your decoder should NOT function like that, straight "out of the box" and installed, if you have not changed any settings, and wired it up correctly. Are you saying that the slightest bit of throttle, and it immediately jumps to top speed? Does it go any faster at all as you increase the throttle?
Check to ensure the correct wiring. "red & black, too the
track", and "orange and grey, move the
motor on it's way"
Even though it says it is "not available" for this decoder
http://www.digitrax.com/v1/dh121.htm you can "reset" most decoders to factory setting by setting CV8 to 08. Try this on your programming track. This will clear any "accidental" CV changes you may have made, if any.
refer Digitrax manual
http://www.digitrax.com/v1/ftp/Decoder Manual.pdf page 58.
This will also reset the decoder address to 03.
You will need to reset the "loco ID" to your preferred (or just select loco 3 to ensure correct operation of the loco back on the main).
Otherwise, try CV 2= 0, CV 6 = 128, CV 5 = 255 (to spread the start/mid/high voltage for the speed steps.)
however if you have mucked with CVs (Specially CV 29 that contains the decoder address, amongst other things, like use "speed table or not" an you've set ALL speed steps to "top speed" (accidentally), then I 'd recommend a decoder reset.
Let us know how you go.