Problemas de interpolação de string

Estou tentando descobrir por que meu teste de unidade falha (a terceira afirmação abaixo):

var date = new DateTime(2017, 1, 1, 1, 0, 0);

var formatted = "{countdown|" + date.ToString("o") + "}";

//Works
Assert.AreEqual(date.ToString("o"), $"{date:o}");
//Works
Assert.AreEqual(formatted, $"{{countdown|{date.ToString("o")}}}");
//This one fails
Assert.AreEqual(formatted, $"{{countdown|{date:o}}}");

AFAIK, isso deve funcionar corretamente, mas parece que ele não passa o parâmetro de formatação corretamente, parece apenas{countdown|o} para o código. Alguma idéia de por que isso está falhando?

questionAnswers(4)

yourAnswerToTheQuestion