UIRoot is an optional component. It simply scales the UI so that it's not huge in size. You can have one, several, or none. If I understood you correctly, you want to have something like this:
- Background (NGUI)
- Game stuff
- UI (NGUI)
If that's the case, then you will need either two UIRoots, each set to a different layer so they don't conflict (and make sure their camera's layers are set properly as well)... or you can just only keep the UIRoot on the UI part of it, and set your background to just be a UIPanel with the background sprite/texture underneath it, set to be drawn by some camera other than your UI camera.
Either way you will have 3 cameras. One for the background, one for your game, and one for the UI.