Сохрани объект в DXF и поищи там матрицу.
Еще одно подтверждение моих слов
Ну скорее всего правда ваша. Провел несколько экспериментов над подопытными.
1 В dxf в свойствах действительно только Normal сохраняется, Ecs нет. 
если только ECS не храниться в отдельном месте в зашифрованном виде, т.к. поиском текста не нашел. Но для того чтоб выяснить нужно вникать в структуру DXF, чего быстро я не смогу сделать.(но дальнейшие тесты подтверждают, что ECS все-таки нет)
2. Проверил "на кроликах"
- Document document = Cad.DocumentManager.MdiActiveDocument; 
- DocumentLock documentLock = document.LockDocument(); 
-   
- Database db = HostApplicationServices.WorkingDatabase; 
- Transaction tr = db.TransactionManager.StartTransaction(); 
-   
- BlockTable blockTable = (BlockTable)tr.GetObject(db.BlockTableId, OpenMode.ForRead, false); 
- BlockTableRecord modelSpace = (BlockTableRecord)tr.GetObject(blockTable[BlockTableRecord.ModelSpace], OpenMode.ForRead, false); 
-   
- ObjectId blockBeginId = modelSpace.BlockBeginId; 
- BlockBegin blockBegin = tr.GetObject(blockBeginId, OpenMode.ForWrite, false) as BlockBegin; 
-   
- Matrix3d rotation = Matrix3d.Rotation(35, new Vector3d(0, 1, 1), new Point3d(-1000, -1000, -1000)); 
- blockBegin.TransformBy(rotation); 
-   
- tr.Commit(); 
- tr.Dispose(); 
- documentLock.Dispose(); 
BlockBegin  не поддался. eNotApplicable и это к лучшему. ))))
Вывод не на все Entity применим TransformBy и это уже  частично подтверждает вашу правоту. 
3. Попробовал трансформировать разные примитивы, тем же методом что и для BlockBegin  
MText, Text, Line, Polyline, Circle, Spline, Hatch
все плоские объекты IsPlanar(если я правильно понял это и есть флаг что объекты плоские) успешно повернулись.
Text и Spline единственные, кто оставил единичную матрицу.
При этом Text повернулся. Text.Ecs выдает единичную матрицу((1,0,0,0),(0,1,0,0),(0,0,1,0),(0,0,0,1)), а Normal (-0.302770869187287,0.951846102545754,0.0481538974542467). 
Подозреваю, что это баг Text.Ecs(acad 2014SP1)!!! И подтверждение ваших слов, что Normal первична, а Ecs высчитывается из нее.
Вобщем выводы такие:
1. Normal первична. Ecs высчитывается из нее. 
2. Скорее всего в Entity определено, что всегда выдается единичная матрица, а наследуемый примитив должен переопределить выдаваемую матрицу на основе своих свойств. Что похоже не реализовано в Text. 
3. Spline не содержит Normal соответственно всегда выдаст единичную матрицу
4. При применении TransformBy пересчитываются внутренние координаты, и назначается нормаль(если она задана). На основе этих данных и выдается Ecs, что и говорил Александр.
5. Скорее всего из всех матриц, что были применены к объекту с помощью TransformBy , Еcs вернет только поворот, а перемещения и масштаб пересчитают координаты объекта, и не будут возвращены Ecs.(по крайней мере для плоских объектов)