Memory is important
A strong memory is indeed one of the top talents a developer can have; actually that anyone can have. It's truly a special thing and I envy and admire those blessed with it. It definitely can help a person be a stronger developer, lawyer, mechanic, or (insert job of choice here).
How much should be required?
But I don't believe it is a fair requirement to require memorization of all things. I do believe that you will begin committing things to memory as a natural part of doing things. This is why reading a book about a language and using it in a production environment are not the same thing. As you work daily with something (some would call this "practice") you will begin to make some things second nature.
As with the other posters, I do believe memorizing key parts of the application does help. However, I'm not sure investing in memorizing all of it is worth the investment when you can take advantage of features like intellisense, which is increasingly common in modern tools.
How can you improve?
I am not an expert on memory, but some believe that you can indeed improve memory through mental exercises such as brain games (crosswords, sudoku, puzzles, etc). The theory is that your brain is like a muscle and if you use it in different ways and exercise it then you can strengthen it.
It would be interesting to see studies on how things like doing brain games, programming, and interactive activities would effect a brain over time. Could such things help fight the onset of memory loss brought on by age or dementia?