Я наконец нашел один способ сделать это.
Существует интерфейс IConfigurationSectionHandler, который позволяет делать то, что я хочу. Требуется тот, кто пишет метод
public object Create(object parent, object configContext, XmlNode section)
После этого вы анализируете section самостоятельно, чтобы я мог без проблем получить XmlElement:
header = s["header"] != null ? s["header"].InnerText : String.Empty;
title = s["title"] != null ? s["title"].InnerText : String.Empty;
Недостатком является то, что интерфейс устарел, но MSDN заявляет, что он не будет удален из будущих версий платформ, поскольку он используется внутри.