akass, Revit все правильно ругается. Тело спецификации содержит данные, основанные на свойствах элемента и вставить туда произвольные данные - не выйдет. Как вы правильно заметили, нужно изменять именно свойства объекта, а не данные спецификации.
Если я верно понял, то вы изменили параметр из API, в то время как вид со спецификaции был открыт, но изменения не отразились в спецификации. Для того, чтобы изменения отразились в спецификации, нужно выполнить метод ViewSchedule.RefreshData()