I dont think you understand what RAID1 is for.
There are failure modes where mirroring makes it impossible to determine which drive is correct.
No there arent. There's always a primary, and unless it fails, its the correct one, by definition.
Errors when writing sectors are not always reported,
This is not a failure mode RAID1 is intended to protect against.
quite apart from the case where the power goes off and one drive has flushed its cache and the other drive hasn't.
If this happens, then that means the system's/rack's/room's battery backups didnt work, and the raid card's onboard battery also didnt work. This is not a failure of RAID1, its a failure of your systems design and maintenance.
Even if you know which drive to replace
You always know which drive to replace. The RAID card tells you. On most systems, its the drive with the red or orange light on it, instead of the regular green light.
What do you think the chances of that operation completing successfully with today's large drives is? Hint: the rate of errors/sector hasn't improved much in the last ten years while the sector count has increase massively.
The chances of it completing successfully before the other drive fails is usually quite high. If your rebuild times are so long that you experience significant risk of failing the other drive during rebuild, then you need to use smaller drives, or some other approach.
RAID1 is useless for protecting against hardware errors - people use it for the stellar read-performance and for no other reason.
This statement shows that you dont understand what RAID1 is for. No RAID solution is, by itself, intended to protect against bus errors, undetected write corruption, cosmic-ray induced bit flipping, or other forms of corruption at that level.
RAID1 provides availability. It allows your machine to stay up and keep going if a drive fails. You also get some concomitant improvement in read speeds, but thats not usually the primary reason, its just a nice side effect.