Only show upcoming event or current events

your are comparing time against wrong time string:

change:

'meta-value' => date('Y-m-d', strtotime('-6 hours')), //value of "order-date"

to this

'value' => date('m-d-Y', strtotime('-6 hours')), //value of "order-date"

because your time string is in m-d-Y format and you are check against Y-m-d which is wrong.

NOTE

if above trick doesn’t work then i suggest you to store time in unix time stamp in database. please read these links for more info how to do it and why

  1. https://designhammer.com/blog/sorting-events-date-using-wordpress-custom-post-types
  2. http://www.billerickson.net/code/create-a-unix-timestamp-based-on-two-meta-fields/