When merging property updates, don't change the result in-place

Instead create a new result object