Unlike other RadControls, the RadAjaxLoadingPanel has its Skin property set to an empty string (no skin) by default, so that the embedded skin images are not shown for existing websites. I suppose that you have a global skin setting in the web.config, which is picked up by the RadAjaxLoadingPanel as well.
You simply have to set Skin="" explicitly for the RadAjaxLoadingPanel.
More about the RadAjaxLoadingPanel skins can be found at:
By the way, the RadAjaxLoadingPanel should not be placed inside an updated control, unless you really want to update it as well (which I doubt).
As for your second question - there is no easy and automatic way to show or hide user-defined content during AJAX requests, so your approach is correct. By default, RadAjaxLoadingPanel hides the entire updated control and positions itself on top of it. If you set Transparency (or Skin) to the loading panel, then it again positions itself on top of the updated control, but does not hide the updated content.
Let us know if you need more information.
the Telerik team