But books are not tools or machines, whereas software applications are (not counting art & entertainment, generally.)
Nobody creates every screw and electrical component from scratch when designing and assembling other tools and machines.
"Programming by manipulating metaphors on screen" would be more akin to using predefined mathematical symbols and formulas, and just putting in the numbers and variables related to the problem you want to solve or the task you want to perform.
Even most popular genres of games could be made entirely from wiring up predesigned components together in a visual environment, without writing any code at all. You would just supply your own graphics and sound and other content.
A poor metaphor. Maybe more like "creating a book by joining high-level expressive words together instead of having to define every concept from scratch for every book"
I've often been curious why programming by manipulating metaphors on screen is seen as an ultimate goal in the evolution of programming languages. It seems a bit like creating a book by sticking pre-generated paragraphs together.
On your final point - static dispatch doesn't prevent you from making your own dynamic dispatch mechanism in the language.