eCannotScaleNonUniformly is all I get.
public static Matrix3d scaleMatrix(double x,double y,double z,Point3d cen)
{
if (x == y && x == z) return Matrix3d.Scaling(x, cen);
double[] data={x,0,0,cen.X,0,y,0,cen.Y,0,0,z,cen.Z,0,0,0,1};
Matrix3d m = new Matrix3d(data);
return m;
}