So far, I'm following the same process as I did before. The cas-overlay-template repo is being automatically synced from cas-initializr, so I use that as my base. When upgrading to a new version, I like to add modules one by one so if there are any errors, it's more apparent which module to troubleshoot. This means that the Initializr's method of specifying the modules when creating the template would actually be more work for me as I would have to merge my customizations each time.
The part that I don't like is when I want to merge any changes from cas-overlay-template, I can't just do a git merge. The overlay repo does not have a change history; when the auto-generation process runs, it scrubs any previous commits. To work around this, I've been checking out the overlay repo to a temp folder, doing a manual merge, and committing the results to my fork of the overlay. Not optimal, but I guess this is the world I'm living in now.