Overview:
Offline Validation Rules are not working when using the $User.Id to compare with a User Lookup field such as: OwnerId.
Root Cause:
CRM offline devices truncate most Salesforce IDs from length 18 to length 15. The $User.Id is not truncated from length 18 to length 15 by design.
Evaluating $User.Id in a validation rule such as OwnerId <> $User.Id does not work because the OwnerId offline is always the 15th character ID and is compared with the User.Id which would always be the 18th character ID.
Solution:
Use a CASESAFEID(Id) to convert the 15-character IDs to 18-character IDs.
For Example: CASESAFEID(OwnerId) <> CASESAFEID($User.Id)
Related Documentation:
CRM Help Documentation: Offline Validation Rules