You have an adverse selection problem. If you're looking to hire really great contractors, then you're mostly looking to hire people who have continuing work with their extremely happy customers, leads that their extremely happy customers referred to them, etc. They don't need you that badly.
So, you ask them to work for $40 an hour for, say, a week. They could make at least 4x that if they worked for other clients. Why should they, the super awesome coder, take you on as a customer? You're asking them to pay a big opportunity cost for business they don't need that badly, and you're showing that you're price-sensitive, and are likely to try to get a discount off their full rate after the trial too. The people this will most scare away are the very best, the ones who don't need you, the ones you really want to keep.
So yes, do a trial if you're not comfortable committing to a big contract with them. But treat the difference between the rate you want to pay for the trial and their rate as part of the cost of finding great talent. Don't squabble over what's going to end up being a very small percentage of what you pay the person over their whole time with you at the risk of sending the best talent straight out the door. It's too great a cost.
Also, if you want great talent, double your expectation of what contract rates should be. $40 an hour as a contract rate in a 1st world country is not a "decent rate".