Exponential Fog not updating properly at runtime

Background - I was want to make dynamic changes to the exponential height fog characteristics in a level during runtime. I alternative between two different fog states, using a simple select float combined with the set parameter value of the fog component:

Problem - I can change the fog parameters at run time (confirmed by doing a get off those parameters), however, after the first time I change the parameters, there is no visible change on screen, even though the parameters are changed. Also, I tested a simple thing where I destroyed the actor (here Temp_Fog) and it doesn’t get destroyed until the second time I run the function. It’s hair-pulling out annoying, as I haven’t seen this before, and don’t understand why destroying the fog actor wouldn’t immediately remove fog from the level?

Edit - after I ‘destroy’ the fog actor (Temp_Fog) I do a check to see if the actor reference is still valid - it isn’t (suggesting it was successfully destroyed). The Temp_Fog reference clearly links to the levels Fog actor, so why wouldn’t destroying the reference, not destroy the referenced fog actor? I can understand that this might be destroying the reference (not the source) - but why would it eventually be destroyed the second time around? Also - this doesn’t explain why I can change the parameters once, but not twice… UNLESS… the reference is coming up as a second fog actor (I just grab the first)… hmmmm

339035-exponential-fog-2.jpg

Context - I am using the Rural Australia kit from Epic (which I believe is just using a normal Exponential Fog component).

Solved - I had discovered that there was another exponential height fog actor that was in the level (by accident) which I believe I was some how changing initially, but that somehow the reference was getting confused (so even after destroying it the first time around, there was a copy that I wasn’t able to change). Annoying.