For anyone else that ends up here (a decade later!), see this workaround that doesn't involve creating a Python Toolbox:
https://support.esri.com/en/technical-article/000011780
Basically, export the script first, then edit it, then import it again. You can test the script iteratively using the "edit" function in ArcCatalog, but the script changes are saved to a temp file, and don't persist after closing the session. Copy your tested code out of the edit session once you are done developing. Then 'export' the script and add a version number to the name. Open this exported script, replace the code with what you had developed and copied out earlier, save (make sure to keep the same file name you set during the export script step) then use the "import script" function, which is available on the tool again.
Note the "import script" doesn't give you the option to select a script from the file menu after you have used "Export Script"; it will automatically import the script of the same name with no dialog or parameters.