Changing system tables is not a good idea, that's asking for trouble.
If 3ms accuracy is not good enough because of the amount of logins, then I guess auditing will be pretty overloaded and a huge bottleneck for just logging the login/logout activity
And just changing the datatype in the audit tables is probably not sufficient anyway, because the auditing system is most likely inserting the eventtime as datetime. The insert will go fine, but you just get an implicit converted value from datetime to bigdatetime