This matches our experience too. Out of curiosity, do you use email as the identifier? And if so, do you verify during the initial signup flow?
We certainly aren't exceptional, and I expect that implementation will become easier as passkeys become more popular, and browser/device APIs develop. So hopefully later adopters will find it even easier than we did.