More than 24 hours, several new gray hairs, and several fewer normal hairs less, I have solved this scenario and thought I would provide my findings here for anyone dealing with any aspects of this complex scenario.
Me, Me.GetType, "Refresh Content Area", _
This code can be called on the return from a custom event handler As i am doing forcing it to run After the server-side event has completed
Public Sub ContentArea_ContentChanged(ByVal sender As Object, ByVal e As ContentAreaChangeEventArgs) Implements IContentAreaLoadEvents.ContentArea_ContentChanged
Dim ctrl = LoadUserControl(e.UserControl())
ScriptManager.RegisterClientScriptBlock(Me, Me.GetType, "GridContextMenuScript", _
As can be seen, ContentArea_ContentChanged is an interface method defined in my ContentPageBase class which is inherited by all content pages to be matched with a corresponding master page. This method is attached in codebehind as a custom eventhandler in the page using addhandler method.
Life cycle is : User clicks item in PanelBar (navbar), navbar fires server side event defined above, event loads new user control, upon return of loadusercontrol server forces page to reresh with dynamically injected scripts! very cool!
Few Last Notes: Notice the GetContentPane() call in the __doPostBack() method. This is because you have to have a reference to the control to initiate the postback request and from what I can tell, since the script is dynamically injected you can't use a RadScriptBlock to enclose the script and thus the <%= Object.ID %> syntax never gets rendered. I could be wrong on this but i could never get it to work using <%= %> syntax.
On the Master page i define a function:
var cpane = document.getElementById('<%=CastnetContentPane.UniqueID %>');
This is enclosed in a function call vs simply naming a var and assigning it because outside of a function the declaration is run as soon as it is parsed in the page which is long before the page is fully loaded and thus always returns null. Placing it inside a function guarantees that it is called only when the dynamic script is injected which is long after the page is fully loaded.
Sorry for such a long post all but this seemed like very useful information as I just spent the better part of 2 days trying to put this together.