Editor: Set a default property (propagating default values etc) in code?

Any tips on “properly” modifying properties in code, without UI? Obviously details customization makes this easy, where you just use IPropertyHandle to set a value, but what about when the UI code isn’t available - for example, if all I’ve got is the UClass I want to set a default on? You can set properties on the CDO either directly or with reflection, but that doesn’t automatically propagate to other instances and subclasses like it would with a change in the editor UI.