latitude/longitude meta_query

In both examples, you are searching between 'max' and 'min', where it should be between 'min' and 'max':

array( $dist['max_latitude'], $dist['min_latitude'] )

'value' => $dist['max_latitude'], 'compare' => '>=');
'value' => $dist['min_latitude'], 'compare' => '<=');

Both mean:

“Search for a value that ist greater than max_latitude and less than min_latitude”

Another finding why my own meta_query didn’t work with geo coordinates: 'type' => 'numeric' does an SQL CAST() to SIGNED. This removes all the decimals of the geo coordinates before comparison!