This has been observed by several others. I have three suggestions:
Keep trying it over and again. One of mine updated after 15 attempts. Sometimes a new attempt continues where a previous attempt failed.
Try it at a time when your zigbee network is not very busy (typically this is at night)
Unpair the sensor, and re-pair it to Hubitat when the sensor is right next to the Hubitat. Then use http://hubitat-ip_address/hub/zigbee/getChildAndRouteInfo to confirm that the sensor is a direct child device of the Hubitat. Then try updating firmware.
BTW, FWIW, I think the issue arises when zigbee traffic goes to the motion sensor through a malfunctioning router/repeater.