Ok, in the end the answer to this wasn't as difficult as I thought it would be. Since I had a relationship between holds and customer, a customer can have many holds, then all I needed to do was prefix the search variable with the model name.
So, if I wanted to search on customer name I would have the variable something like this:
customer_first_name_cont
Don't recall what the exact issue was with the dates, but they are working fine too.