A proper workaround.

Distribution.reinitialize_command implies that you get the same command
that get_command_obj() but fails to set options that were supplied in
config files or on the command line like Distribution.get_command_obj()
does.

This includes a monkeypatch to fix this issue.