This is 100% expected behaviour. save-excursion
has nothing to do with windows.
Perhaps you are confused about the phrase "...and the current buffer [is] restored". The "current buffer" is independent of the buffer in the selected window, and moreover need not be displayed at all. The current buffer is simply the buffer which is being acted on at the time.