The EHC doesn't have much to do with the speedo other than providing +12v power control.
It's not always the EHC and too many people here seem to say it's the culprit before offering any real helpful advice. Not that it has happened on this tread. It's a great product when installed to replace a failed EHC, but it won't fix all bad wire connections, the battery or speedometer. After you elliminate all other possibilities then you could make a more logical choice.
Knotso's battery suggestion is a great first step. You should have a minimum of 12.6 to 12.8 volts across the terminals off the charger an hour or more.
Disconnect the battery then the EHC harness connectors and clean and fill the EHC connectors with fresh dielectric grease.
Before you go out a spend $500+ dollars and 6+ hours labor for the Wire+, you need to make sure you have good clean connections in the gauge head. The speedo has a three wire connector for power, ground and signal from the speedo sender on the trans. Poor power connections will cause erratic operation. Sounds like a speedo unit due to no trip mileage button working and other gauge connection related problems.
The annunciator board (tach and other LEDs) also have power, ground and many other signal wires. The connector could be loose, bad wire, cracked board, water damage, or a host of other possibilities.
These dogs don't like the water. So when you wash them...keep the hand controls dry or covered with a plastic bag and don't power wash any connectors. You need to go through all harness connections and clean and fill with fresh dielectric grease as a maintenance item.
Hope this helps!