This totally works, however I found you have to ensure you are using a forward renderer, and force the camera to render prior to running a screen capture.
Something like:
....
camera.Render();
screenShot.ReadPixels(new Rect(0, 0, resWidth, resHeight), 0, 0);
....