Create a zip file using an Automator Service
Why not just use the Create Archive action rather than shell scripting?

I created a quick one that has four steps.


selects a folder (Ask for Finder Items - Folders only)
selects the files (Get Folder Contents) 
filters the items to not selects any subfolders (Filter Finder Items)
pass the files to the Create Archive action