I think I know what the problem is. When you call
pCloud->getPointDataByPrecision(mReturnData, precision, pSpatialFilter, pAttributeFilter,
dataTypes, maxPointLimitation);
The parameter Adesk::UInt32 dataTypes must contain the flag IAcDbPointCloudDataBuffer::kNormal:
Adesk::UInt32 dataTypes = IAcDbPointCloudDataBuffer::kNormal;
Otherwise your mReturnData won't contain normals.
By the way: I think it is wrong to call
delete pPointList;
delete pVectorList;
These array pointers are returned as const pointers. The usual ObjectARX API contract is, that returned const pointers must not be deleted. Although this is not explicitly stated in the docs.
But you should delete mReturnData and maybe also call mReturnData->freeObject() before you delete it.
Thomas Brammer ● Software Developer ● imos AG ● LinkedIn ● 
If an answer solves your problem please [ACCEPT SOLUTION]. Otherwise explain why not.