Как заменить конструкцию if else на switch?
Но со switch не будет компактней.
Компактней будет если ты свои CategoryToggle и RectangleCategory разместишь в массивы. И тогда у тебя логика будет только одна, проверить чекер и применить браш.for (int i = 0; i < categoryToggleArr.Length; i++)
{
   if (categoryToggleArr[i].IsChecked)
   {
      RectCategoryArr[i].Fill = new SolidColorBrush(dialog.Color);
      RectangleCategoryArr[i] = new BrushConverter().ConvertToString(dialog.Color);
   }
}
switch работает по одной переменной. 
у вас же 2 
CategoryToggle1.IsChecked 
CategoryToggle2.IsChecked