That process works just fine for me on WP8 using FIle Explorer.
Here are the two things that could have gone wrong:
Are you trying to use production XAPs from the Windows Phone Apps service? Those are signed with the WmPrHeader and can no longer be changed without braking that signature. Make sure you're using XAPs generated from VS2012.
Your ZIP format doesn't match the XAP ZIP format. It could be that the way you're adding a file into the ZIP and saving the new ZIP changes the compression algorithm to something unsupported by WP8. Make sure you're using the same compression alogirthm with the same parameters.