So, I happened to figure out the error.
createTexturedQuadGeometry expects normalised texture coordinates.
So,
osg::ref_ptr<osg::Geometry> pictureQuad = osg::createTexturedQuadGeometry(osg::Vec3(0.0f,0.0f,0.0f),
osg::Vec3(viewWidth,0.0f,0.0f),
osg::Vec3(0.0f,0.0f,viewHeight),
0.0f,
0.0f,
1.0f,
1.0f);
solves the problem.