As noted on solr-dev, I had misunderstood the behavior. The problem was that I had configured a separate handler for spellcheck and I needed to pass shards.qt to make it work with distributed search.
So distributed spell check is working and I'm trying to write tests making sure that the response returned by distributed spellcheck is the same as the one returned by non-distributed spellcheck for the various spellcheck parameters.
In the current patch, distributed spellcheck always returns correctlySpelled=false which non-distributed mode does not. I'll have a patch ready soon with the test and fixes.