I discovered, while trying to use atlas contentpanels in my app, that the bits inside the atlas content panels are not loaded along with the normal load process. This means if you have a PageLoad event in your custom control and you try and set something inside the ContentPanel it is not created yet. To work around this you need to do creative things with events.
With the paginated repeater I included the details on previously I added an extra function which goes through and finds a control that implement IDataSourceProxy in the parent list of the control. From this I can then get the datasourceid and do a FindControl on the page to find it. This is a bit messy, but it does work.