If a mount point resides in /run on shutdown and cannot be unmounted, systemd will mount this mountpoint read-only.
This propagates to /run being read-only.
When the dracut shutdown procedure runs in a /run root to disassemble and unmount the old real root, its /run is read-only. dracut expects a writable /run, though, so it fails on shutdown.
If dracut encounters a read-only /run on shutdown, it remounts it writeable.
The dracut shutdown procedure to disassemble and unmount the old real root succeeds.