Tom - Dehighlight will dehighlight any object that is highlighted plus remove any overriding colors (This is made via Assign Color). That's just the way it works.
You could though when using cross probe etc go from schematic to pcb. This way when you select a part in the schematic it will temporary highlight the part in the pcb. To deselect just LMB (left mouse button) in a blank space in the board. This way you will not need to use the dehighlight command. If you cross probe from PCB to Schematic you must be in either Highlight or Assign Color to seelct in the PCB. Hope that helps.
I took a look at this "dehighlight" issue a bit more and noticed that when you select dehighlight, the window that comes up has a little check box called "retain objects custom color". Selecting this will keep any user set custom colors when using "dehighlight - all". The rats colors I set are no longer changed when this box is checked.
As far as cross probing goes, I have been using the "place from schematic" method for placing parts, but there are many times when I like to select an already placed part to see where it is in the design. Some of the designs I work with have 20 or more sheets of schematic and would be a lot easier to just pick the part on the board rather then go into Capture and do a find. I relied heavily on how the cross probe feature used to work. I have adjusted to how it works now, but, for me, it is a lot less effecient.