I think I may know why this happened, to wrap up on this issue...
User B opened the file, made changes, had issues saving changes, undid
changes and undid the file checkout. The time he did undo checkout was
the timestamp on the version. A version was created since the file was
opened and edited, but since the changes were not saved, it assigned the
last user to edit the file (User A) as the modifier.
Maybe a stretch, sorta makes sense. It is all I could come up with.