The grid switches an empty falsevalue string to "0". This is by design. You can see this at \Syncfusion\Essential Suite\3.0.1.0\Windows\Grid.Windows\Src\Extensions\CellTypes\GridCheckBoxCellModel.cs(91) if you have teh source code.
If you do not want this, then one way to work around it is to handle the SaveCellInfo event and swap the value there.
private void gridControl1_SaveCellInfo(object sender, GridSaveCellInfoEventArgs e)
{
if(e.Style.CellType == "CheckBox" && e.Style.Text == "0")
e.Style.Text = "";
}