Get-ADUser doesn’t necessarily query the GC; it’s designed to query the entire user object, and so it contacts a DC. Obviously, on a given DC, there can only be one instance of a given user. What’s in the GC isn’t technically a user object, which is what Get-ADUser wants to query.
You might be better off shifting to an older-style ADSI query, where you can explicitly query a GC.
Identity can be a DN, a GUID, a SID or a sAMAccountName.
As the sAMAccountName is the only one of those that could be the same across the various domains, you’re better off providing a filter based on that. This will return the correct results: