I would stick to the approach you have outlined. Where
possible maybe change it slightly and use a theme instead, this means that
you can then apply this theme to any site not just one that is based on your
custom site definition. Where possible also ensure that items like CSS, JS,
XML etc are stored on the disk to allow for global changes to be made
without having to manually change it loads of times. The approach of using
SPD works perfectly fine if you do decide to create a theme, this way you do
get the _styles folder and a CSS file to edit, this allows for instant
changes which you will then merge into your final theme when you are ready.