No, I don’t think it has anything to do with the sound engine. I’ve had it happen when I was using Live with Virus Control active, in which case it was behaving the same whether the MIDI was routed back to the Virus or to another sound source (with the Virus playing nothing), and I’ve had it happen when using Max, without the Virus Control plug-in, and I was working on a patch that didn’t route the MIDI to any sound sources (I was just watching the incoming messages).
It’s quite curious how it only happens for legato playing. Because when I switch it to staccato, the note on and note offs are quite a bit closer together in timing, but they play fine. That doesn’t make any sense, because it seems to suggest that the Virus is "interpreting" incoming MIDI instead of just passing it on.
By the way, last night the Virus was in single mode with one of the default >>INPUT<< patches active, and, as I said, a reboot cleared it, though it was in the exact same state (meaning that input patch is the boot-up patch, and I didn’t touch a single knob or switch).