Terrain height calculation problems


I am using the following piece of code to get the terrain height in a specified position:

var ray = viewer.camera.getPickRay(position);
var height = Cesium.Ellipsoid.WGS84.cartesianToCartographic(position).height;

To mitigate the differences between Cesium and Google Earth, I also query the Bing Elevations API to get the offset geoid sea level and finally subtracting it to find the actuallheight:

var realHeight = height - offset.

I have noticed that the real height matches that of Google Earth for some points and for others not. Is that reasonable?