FluentNHibernate и ActiveRecord довольно разные.
Первый из них - просто кодифицированный генератор картографирования, управляемый конвенцией для NHibernate.
Последний представляет собой слой абстракции поверх NHibernate вместе с реализацией шаблона Active Record.
Castle Active Record действительно скрывает некоторые аспекты NHibernate от вас, заботясь о некоторых вещах самостоятельно. Таким образом, это может быть менее гибким вариантом, если у вас уже есть сложная существующая база данных.
FluentNHibernate просто генерирует ваши сопоставления, и вы постоянно используете NHibernate для взаимодействия с вашей базой данных.
Так что, хотя я не являюсь экспертом ни в одном из этих случаев, я бы сказал, что для таких извилистых БД вы хотите оставаться как можно ближе к металлу, насколько это возможно, поэтому, возможно, к чистому NHibernate (отображается через FluentNHibernate или hbms, где требуется) или даже IBatis.NET будет лучшим вариантом для вас.
Где сияет ActiveRecord, это когда вы начинаете свой проект с нуля, без устаревшей БД.