I've been working on something similar.
Spoofing CAN bus message ID#0x400 B1=0x02 (which is the source of the dashboard display for battery meter, range and amps), we can display the speed on the little orange dashboard display, but a lot of flickering can be seen. I've no doubt that this can be optimized, but I can't see how it will ever be perfect (but could end up better than the nothing we have now). Frustrating, as it shows just how easy this would be for Tesla to do themselves (being the source of those CAN bus messages in the first place).
Ongoing...