i agree that it seems easier to simulate working conditions with a homework assignment. (it does add a lot of work for the company to do homework problems well, but let's leave that aside)
the downside is that the candidate has a limited amount of time to talk to you. they often have a full-time job going on top of the job hunt. secondly, are you really game to spend 0.5-2 days of unpaid work just for the chance of being invited to interview further?