Did you remember to assign a value to the custom control properties? (on the form containing the control) This is required so that EnsureChildControls is called.
This is what I did with your control, and it worked fine:
paste the code into a Web Control Library new project (changed the namespace to the default of the project)build that projectadd the control to the toolbox (right-click on toolbox, Customize Toolbox, .Net Framework Components, Browse)drag the SearchControl into a Web form of another projectset a value to the "SearchProcedure" propertybuild and run the web project...and on click I was redirected to
www.microsoft.com as you intended
Regards,
Jose.