The issue was caused by bevel object being automatically added to the scene graph by dag_get_node() and had no incoming relations, even form the scene. This confused scene update flush logic. Now there'll be a scene relation added to such nodes, so they're always reachable from the root node.