Dzieje się tak dlatego, że pole daty, o które pytasz, jest złożonym ciągiem, a nie Date(). W dokumentach mongo zamiast niestandardowego ciągu daty, wstaw obiekty daty javascript w polu daty.
jak
{ deviceID: 186,,"date": new Date(2012, 7, 14) }
a kiedy wykonasz usuwanie, zrób to tak, jak
db.coll.remove({date:{$lte:new Date(2012, 7, 14)}})