Think this is easier in terms of resetting the model.
Anyway, I've had this issue too in
Immersion, and noticed that if you're setting model properties while the frame is hidden, they won't take if transitioning from :SetUnit and :SetDisplayInfo to :SetModel. To ensure your solution works, clear the model and set up the properties again
after the model frame is visible, using an OnShow script.