Hi Tig (and all others),
Thanks for the responses, fixed my problem wonderfully. Kudos.
I did try using start_operation() with the second parameter set to true, but the Outliner window is still redrawn when each dynamic component is redraw using $dc_observers.get_latest_class.redraw_with_undo(compInst).