Sie scheinen immer noch isset() zu überprüfen, obwohl die Frage nicht lautet, ob es gesetzt ist, sondern ob es wahr oder falsch ist. PHP vermasselt eine Menge Dinge, wenn Sie Variablen als boolesche Werte prüfen, aber isset() auf eine Set-Variable, die false enthält wird immer noch true zurückgeben.
Versuchen Sie zu handeln
if (isset($_POST['GFCheckbox']))
für
if ($_POST['GFCheckbox'])
und sehen, was passiert.