...but seemingly only when MakeTemplate() is called with additional parameters.
var testUri = new Uri("http://localhost/foo?bar=baz");
return testUri.MakeTemplate(new Dictionary<string, object>()
{
{"param", "value"}
}).Resolve();
When called without parameters, the "Actual" result, is correct.