It is unclear from the description what is the exact desired behavior. Do you want each page to have it's own background? Do you want each page to have the same background?
If you want each page to have the same background, then I would use CSS in the skin.
body { background-image:url(whatever.jpg); }
With a little script, which is just a slight alteration of Mark's technique, and which uses the technique that Vasillis outlines at http://www.thinkofdesign.com/blog/id/68/css-selectable-pages.aspx, I could ensure that each page would have a unique class on the body tag.
<script language="vb" runat=server>
Protected Overrides Sub OnLoad(ByVal e As EventArgs)
MyBase.OnLoad(e)
dim body as HtmlGenericControl = ctype(Page.FindControl("Body"), HtmlGenericControl)
body.Attributes("class") = "page" & PortalSettings.ActiveTab.TabID
End Sub
</script>
Then I could use a generic body CSS style for a default (shown above). Where I have pages that need a different background, I just use:
.page40 { background-image:url(myrealspecial.jpg); }
This gives you complete control over the background image on each page using CSS.