Bill,
As soon as you call the "save()" method the shapefile is finalized to disk. If you were to remove the first save call in your example, your code would create two polygons.
To edit a shapefile after you have saved it you need to create a Reader object, read in the saved shapefile, transfer it to a Writer object, call the poly and record methods for the second polygon, and save again.
Please see this blog post where I demonstrate exactly what you are trying to do using two polygons:
You may have noticed there is also an Editor class in the library. That class is supposed to perform the above operation in a single object to save you some lines of code but people keep finding bugs so it's a work in progress. The method above is extremely reliable so it's worth the extra steps.
Let me know if how that goes for you or if you have any other questions.
Thanks,
Joel
--
Joel Lawhead, PMP
E-mail: jlaw...@geospatialpython.comWeb: GeospatialPython.com
Twitter: @SpatialPython