Check your branches.
What might be happening is that on insert and update an other branch is followed.
Where the branch of the insert either isn't clearing the cache of the page or is setting the item with it's own value.
The branch on the update on the other hand is clearing the cache of the page and not setting the item.
With a delete there is a clear cache process generate by the wizard. Check if this process is only running on the delete and not on the update.
From memory the process is called something with reset.
If the above doesn't help try to replicate the problem on apex.oracle.com and give access with a guest developer account so we can have a look.