[Android Themes] D.O.C:
OK updated to 0.4.1 its a very small update but it should solve compatibilty issues since now it mounts only using busybox instead of partitions blocks and removed writing to a specific partition which contains the bootlogo (program initially written for the SGSII)

So current updater script looks like this

ui_print("... VillainTheme Flasher ...");
ui_print("For more info etc, head to www.villainrom.co.uk");
ui_print("Preparing to theme...");
show_progress(1, 15);
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "/data");
run_program("/sbin/busybox", "mount", "/dalvik");
ui_print("Wiping dalvik-cache");
delete_recursive("/data/dalvik-cache");
delete_recursive("/dalvik/dalvik-cache");
package_extract_dir("vrtheme", "/sdcard/vrtheme");
set_perm(0, 0, 0755, "/sdcard/vrtheme/installtheme.sh");
set_perm(0, 0, 0755, "/sdcard/vrtheme/zip");
set_perm(0, 0, 0755, "/sdcard/vrtheme/cleanup.sh");
set_perm(0, 0, 0755, "/sdcard/vrtheme/zipalign");
run_program("/sdcard/vrtheme/installtheme.sh");
ui_print("UI Theming complete");
run_program("/sdcard/vrtheme/cleanup.sh");
package_extract_dir("system", "/system");
package_extract_dir("data", "/data");
ui_print("Additional files copied");
run_program("/sbin/busybox", "umount", "/system");
run_program("/sbin/busybox", "umount", "/data");
run_program("/sbin/busybox", "umount", "/dalvik");
run_program("/sbin/busybox", "umount", "/sdcard");
ui_print("Thanks for using VillainTheme Flasher");

You want to modify the systemui.apk you are going to bundle in this zip file right? so as easy as changing the order of the copying of the files, for the files you include get copied first, then get modified by the installtheme.sh.

Modify it like this

ui_print("... VillainTheme Flasher ...");
ui_print("For more info etc, head to www.villainrom.co.uk");
ui_print("Preparing to theme...");
show_progress(1, 15);
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "/data");
run_program("/sbin/busybox", "mount", "/dalvik");
ui_print("Wiping dalvik-cache");
delete_recursive("/data/dalvik-cache");
delete_recursive("/dalvik/dalvik-cache");
package_extract_dir("system", "/system");
package_extract_dir("data", "/data");
package_extract_dir("vrtheme", "/sdcard/vrtheme");
set_perm(0, 0, 0755, "/sdcard/vrtheme/installtheme.sh");
set_perm(0, 0, 0755, "/sdcard/vrtheme/zip");
set_perm(0, 0, 0755, "/sdcard/vrtheme/cleanup.sh");
set_perm(0, 0, 0755, "/sdcard/vrtheme/zipalign");
run_program("/sdcard/vrtheme/installtheme.sh");
ui_print("UI Theming complete");
run_program("/sdcard/vrtheme/cleanup.sh");
ui_print("Additional files copied");
run_program("/sbin/busybox", "umount", "/system");
run_program("/sbin/busybox", "umount", "/data");
run_program("/sbin/busybox", "umount", "/dalvik");
run_program("/sbin/busybox", "umount", "/sdcard");
ui_print("Thanks for using VillainTheme Flasher");

What I did is only to change its order where the commands

package_extract_dir("system", "/system");
package_extract_dir("data", "/data");

are now before the updater script runs installtheme.sh :)

Did I read you right?, or maybe I am misunderstanding you?. This is a simple copy/paste modification