No idea from the segment of code you have posted. However, from your description, the problem seems to be when the objects move so quickly they jump through each other in a single cycle so they don't appear to collide. Is that right?
You can limit this by using fixed-rate logic on a smaller timestep. Alternatively look at the physics libs which will either suggest a sweep or axis-aligned bounding box (AABB) test.
p.s. Haven't looked that closely but you seem to be using delta-time and not fixed-rate logic with tweening.
<edit> this is good and this is good too.
If you get to a point when you have too many collisions to test then look for 'Shifted-grid' collisions.
You can limit this by using fixed-rate logic on a smaller timestep. Alternatively look at the physics libs which will either suggest a sweep or axis-aligned bounding box (AABB) test.
p.s. Haven't looked that closely but you seem to be using delta-time and not fixed-rate logic with tweening.
<edit> this is good and this is good too.
If you get to a point when you have too many collisions to test then look for 'Shifted-grid' collisions.