I found that using this wonderful book block snippet http://drupal.org/node/44648 in a book page as embedded php gives me a Table of Contents which I don't have to keep updating every time I add new content to the book. The only trouble is when you click 'print friendly' all it shows is the php snippet, not the book contents.

You can see it at http://www.cpnhelp.org/?q=contents

Any suggestions?