The problem seems to be that this file is in use at the time of upgrade, so it should probably be scheduled to be overwritten upon reboot.
The setup does that. However I do not know if regular (non administrative) account is able to do this.
Yes, you seem to be right: non-administrative accounts may not schedule files to be moved at reboot. In this case, the setup should either:
-- require the user to uninstall any previous version and then install the new one; or
-- require the user to restart the system and log back in to complete the upgrade.