HI Paul,
I don't know enough about what you are doing to guess what is amiss with the Uniform set up. The only thing I can suggest is if you are overriding other Uniforms then append a osg::StateAttribute::OVERRIDE parameter to the addUniform to allow it override the settings below it in the scene graph.
As for texture units used, this will vary between the various ShadowTechnique. There are settings in headers of the techniques, or placed centrally in the ShadowSettings object to allow you set the base texture unit. Also have a look at the implementations.
Robert.