I'll try and explain the systematic way I went about isolating the problem.
First I created the prefab for just a simple label and added UnitHUD to it. Then I created a plane and put a cube on it and attached addUnitHUD to the cube. I ran this alone with the main camera as created when creating a scene. IT is labelled as "main camera" and its culling is "everything" and it is in the default layer. The camera for the UI is not labelled, but has its culling as "HUD" and is in the HUD layer. Worked great.
Then I removed the main camera and put in the first person controller. The first person controller prefab has a main camera attached to it. It is labelled as "main camera", it's culling is "everything" and it is in the default layer. The HUD pieces remained exactly the same. Now the box label does not show up.
Then I wanted to go back to the main camera so I removed the first person controller and created a camera from the Assets->Create->Camera menu. I renamed it main camera, had its culling set to everything and had it run in the default settings as main camera. This did not return me to the state at the start of the scene. The box label still did not show up.
Create new scene, repeat and I was only able to get it to work with the camera that is set as the default in the scene. Nothing I could do with camera controls could change that (that's the part I'm stumped by). At random times I would get into a state where I couldn't see the world, only gray and the label from the NGUI camera.
So if you just follow the first steps, create a label you can see with main camera, swap out the main camera and swap in the first person character controller, you should see the same problem I had.
For a work around I tried having the main camera in the scene and spawning in a first person controller without a camera, then attaching the main camera to the character controller. I was then able to see the label on the box, but I could no longer use mouselook to control my camera in all directions. It would not turn from left to right.
That's when I gave up. I have learned to do what I need here with the native Unity GUI commands. But it means the NGUI won't be usable for a HUD for me as my entire game is first person controller played and I simply could NOT get the NGUI camera to cooperate with the first person controller camera.