Это интересная вариация на тему.С первого и второго взгляда можно предположить, что взята истинная ветвь.Не так!
bool? flag = null;
if (!flag ?? true)
{
// false branch
}
else
{
// true branch
}
Чтобы получить то, что вы хотите, нужно сделать следующее:
if (!(flag ?? true))
{
// false branch
}
else
{
// true branch
}