Granny and eggs here but all the DME Hold switch does is prevent the NAV Freq selectors from changing the DME Freq. So, the most likely culprit is the DME Hold switch itself, which may be permanently 'made' due to years of sweaty fingers and muck. You might try removing the switch cap and squirt some switch cleaner into the box.
Failing that, it shouldn't be too difficult to access the bottom of the box and physically check switch operation with a meter.