~/.ssh/config it slurps options for named servers, but not for the all hosts "*" option. This means that it is not possible to set a configuration value for all hosts in the config file, and instead Rex sets its default. (In my case, I was trying to specify a default timeout value).
I've worked around this by adding the following in my Rexfile:
Rex::Config->set_timeout(20); but I wanted to note it here for the record.
It doesn't look like an easy fix unfortunately, as each configuration option is taken from a hash for the host in question.