E' l'approccio sbagliato, devi usare un placeholder.

codice:
<asp: placeholder id="phUCS" runat="server" />
e lato server
codice:
Dim uc1 as New UserControl
uc1 = LoadControl("...percorso del file ascx")

If not isnothing(uc1) then
   uc1.ID = "uc1"
   phUCS.Controls.Add(uc1)
End if
e cosi' via per uc2 ed uc3


l'ho scritto in VB ma e' facilmente traducibile