All works fine in the x or y dimension, but if I scale in the z direction,
then immediately follow with a glRotatef, the scaling doesn't 'stick' -
the z dimension immediately reverts back to what it was -

I suspect it has something to do with my camera/viewing projection,
and the fact that it lies looking along the z dimension - but how?
The code works fine for x and y, e.g.:
glScale(newFloat, 1, 1);
or
glScalef(1, newFloat, 1);