That would need a different extruder handling and some logic to detect when to use what. So for the normal way it would be very complex.
It would be much easier if this would be implemente din the G10/G11 commands. There it known what part is retraction/undo retraction (ok 100%) so no special logic is required. Just running all extruders with the same distance. Only problem is that we can only move one extruder at a time. You for 3 extruders you would need 3 retraction in a row. Not sure if that is really better.
For a simultaneous retraction even more complicated logic would be required. I think we would need a signal insides ISR routine to signal extruder stepper routine to stepp all.
One easy solution I can think of is using G10/G11 and changing weight to 1/3 for each and restore it after retraction. But that also has drawbacks as you need to run buffer empty on each color change causing a small pause every time.
So yes, it is possible but is quite some work and someone with a mixing extruder for testing/developing.