What´s wrong with my Frustum Culling implementation?

I´m struggling with a weird problem since hours. Ive implemented frustum culling with the help of online articles and a book. The problem is that the objects are not culled correctly. I´m using Spheres, they are scaled correctly - I just dont know what´s wrong!

Ill just show you some code:

First my frustum is just an array of six planes, and a plane is just a Vector4 with x,y,z and w!

Check if sphere is inside frustum. Maybe the problem lies here:

bool Frustum::checkSphere(const PrimitiveSphere& sphere, const WorldPoint& were) const noexcept {

const auto pos = were.position + sphere.center;
for (const auto& plane : planes) {

const float radius = sphere.radius * were.scale.unitMagnitude(); //unit magnitude is just x + y + z / 3
const float dist =
plane.x * pos.x +
plane.y * pos.y +
plane.z * pos.z + plane.w;
return false;
}
return true;
}

Build my frustum each frame from ViewProjectionMatrix

void Frustum::fromViewProj(const float* const vp) noexcept {

const float xw = vp;
const float yw = vp;
const float zw = vp;
const float ww = vp;

const float xz = vp;
const float yz = vp;
const float zz = vp;
const float wz = vp;

PrimitivePlane& near = planes;
PrimitivePlane& far = planes;
PrimitivePlane& left = planes;
PrimitivePlane& right = planes;
PrimitivePlane& top = planes;
PrimitivePlane& bottom = planes;

near.x = xw - xz;
near.y = yw - yz;
near.z = zw - zz;
near.w = ww - wz;

far.x = xw + xz;
far.y = yw + yz;
far.z = zw + zz;
far.w = ww + wz;

const float xx = vp;
const float yx = vp;
const float zx = vp;
const float wx = vp;

left.x = xw - xx;
left.y = yw - yx;
left.z = zw - zx;
left.w = ww - wx;

right.x = xw + xx;
right.y = yw + yx;
right.z = zw + zx;
right.w = ww + wx;

const float xy = vp;
const float yy = vp;
const float zy = vp;
const float wy = vp;

top.x = xw + xy;
top.y = yw + yy;
top.z = zw + zy;
top.w = ww + wy;

bottom.x = xw - xy;
bottom.y = yw - yy;
bottom.z = zw - zy;
bottom.w = ww - wy;

for (auto& plane : planes)
plane.normalize();
}

Now the problem is, the draw calls are the same if all the orbs are in my frustum or only 5. But when I rotate my camera slowly a bit the drawcalls are decreasing a bit. WTF? Just look for yourself (the red rect marks the drawcalls):   Does anybody have an idea what it could be? Or is my code okay and the problem is somewere else? :/