В принципе "просто" вопрос замены всех жестко закодированных ссылок корневого окна в xmonad идентификатором окна, который может быть указан при запуске.Но если xmonad уже не имеет этой возможности, вам, безусловно, придется взломать код xmonad, чтобы добавить его.
Вы можете запустить весь свой собственный X-сервер и сделать вид, что ваше окно является корневым окном - как Xephyr или Xnest.,Это, безусловно, намного сложнее, чем добавление функции xmonad для использования некорневого окна, но у него есть преимущество в том, что он будет работать с любым оконным менеджером.
Другой подход может состоять в том, чтобы просто извлечь код из xmonad и вставитьэто в ваше приложение ...