Akhirnya saya menemukan jawaban untuk masalah saya. Secara teoritis garis bujur adalah sumbu x dan garis lintang adalah sumbu y. Tapi kita sudah terbiasa dengan lintang-bujur daripada bujur-lintang...Jadi cara saya mencarinya salah
$near : [msg.lat, msg.lng]
Ketika saya mengubah ini menjadi $near :[msg.lng, msg.lat] , itu mulai bekerja bahkan dengan 5KM... Jadi pemesanan adalah masalahnya.