I can't think of an identity project in the last 20 years that hasn't included both custom schema and multiple stages (dev / test / prod). Having to manually keep the schema updates in sync between stages, while using packages to keep the code in sync is, at best, a bit of a pain.
I'm working right now in a three tier environment (dev / test / proc) where some data attributes are published from an HR system in to eDir with a custom aux class and attributes added to a user object. From there, it goes out to other connected applications. I can easily package the filters, the schema maps, and the policies to make this happen, but I can't package the schema changes to go with it.
I like Lothar's method listed above. It's not perfect, but it seems pretty good and you could easily borrow it and enhance it in to Designer.