This works really well. By chance have you tried it where you have two attributes that change?
I've tried what you have here but tried with two different attributes it seems to get out of sync. For example I have Region and SubRegion. When I select Region, all works fine. When I select SubRegion, I get the following message:
RegularUser has been changed by another user. Please get the latest version of the data and try the operation again.
Any thoughts on how to avoid this?