I've worked with Ian to test out this feature at our institution too, and think I see what the issue is within Canvas (perhaps both with SpeedGrader, and the counting in a submission for a student).
Using an example with no formatting, just a title on a separate line then a bigger body of text typed below, the discrepancy was that Word and online counters were giving 117 chars, but Canvas was giving 118 chars when composing the submission, and 118 chars subsequently for the submission in SpeedGrader. Looking back over the submission whilst typing it in an additional test, I could get 117 in Canvas only when I completed removed this space between the title and body of the text (which then also agreed with Word/online checkers). Inspecting this with Dev Tools, the only difference in formatting of the page therefore was the paragraph space between the text beforehand, with the tags '<p></p>'.
Assuming both SpeedGrader and in situ counting typing a submission are to be the same as stated by your engineer, this appears to be where this discrepancy will be coming from - in that invisible paragraph tags, automatically added by an RCE, are counting as a word within Canvas. This was the only tags I could see in this small test, but this might not rule out other forms of invisible formatting too perhaps.
To try and amend this issue with word counts, looking at excluding formatting tags I believe to be the best solution here.