Я новичок в программировании, но я бы сделал так.
ContentControl очень удобен для этой задачи, ибо просто расположить элементы в нужной позиции. Но в таком случае при изменении размеров окна будет менять только центральная панель.
Если вам нужно, чтобы и левый сайдбар менял свою ширину при изменении размера окна, тогда нужно использовать Grid.
Создается 2 колонки и 2 столбца. В первую ячейку располагается верхняя панель и устанавливается у неё значение ColumnSpan="2". В 3 ячейке располагается левый сайдбар и для динамичного изменения ширины ставится ширина колонки Width=".4*"(40% от ширины окна). Ну а в 4 ячейке расположен центральный сайдбар.
Для загрузки XAML файлов на главное окно я использую класс Frame.