You discovered a bug in the engine, and you are sure that it is not a problem of your code? Just post it in here. Please read the bug posting guidelines first.
The value polyCount that you are passing to addSphereSceneNode() is not the total number of polys to use to make the sphere, it is the number of polys per row/column of the sphere.
Imagine you had a sphere with 16 rows and 16 columns and unwrapped it into a grid. The total number of cells in the grid would be 16 * 16 = 256. Now imagine that each cell of the grid is made of two triangles [primitives]. The total number of primitives for your sphere would be (16 * 16) * 2 = 512. More generally, it would be (polyCount * polyCount) * 2.
Thanks
"Yessir, I'll be happy to make these unnecessary changes to this irrelevant document." (Dilbert)
No, this is the correct forum, he means to add some words to the API docs.
BTW: Yes, seems a good addition. The CSphereSceneNode uses polyCountX and polyCountY or something like that, so it's more obvious that it's not the total count. But for the scene manager it's pretty misleading.