Ну, как это я понимаю...

Stores предназначен по определению для сохранения произвольных графов объектов. Вот домен и отождествляется некоторому такому графу. Из домена ссылок наружу нет (т.е. перманентных ссылок, сохраняемых через WriteStore), а внутри домена ссылки могут быть произвольными. Если мы хотим построить перманентную ссылку между объектами, мы должны объединить их домены, вызывав Stores.Join, иначе при WriteStore сработает предусловие...

Технически домен берет на себя разрешение циклических ссылок, т.е. записывание каждого объекта только один раз, независимо от числа вызовов WriteStore для него.
Так вот, технически без доменов для этого вполне можно было бы обойтись (как Вы сами говорили про свою реализацию), но, видимо у Ominc были какие-то планы по расширению функциональности Stores.
И в целом введение доменов - это правильно, потому что позволяет контролировать сохраняемый граф объектов, держать его обозримым. Иначе при некотролируемых WriteStore легко и всю кучу ББ выгрузить из-за недосмотра...