As it turns out, there's currently no way to implement this functionality due to limitations in the evdev input driver as included in Ubuntu 10.04 (Lucid).
In principle, the idea would be to set the "EmulateWheelButton" option and related wheel emulation options, as well as the "DragLockButtons" option to make the wheel emulation button have drag-lock behavior. Digging into the evdev source reveals that the wheel emulation code and the drag-lock code are currently mutually exclusive -- either the event is handled and dispatched by wheel emulation, or it's handled by the drag-lock code, but not both.
The relevant xorg.conf.d snippet for the configuration without drag-lock for a Logitech TrackMan FX is:
Section "InputClass"
Identifier "Logitech TrackMan scroll button support"
MatchIsPointer "on"
MatchProduct "PS2++ Logitech TrackMan"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
Option "EmulateWheel" "1"
Option "EmulateWheelButton" "8"
Option "XAxisMapping" "6 7"
Option "YAxisMapping" "4 5"
Option "EmulateWheelTimeout" "0"
Option "Emulate3Buttons" "0"
EndSection