I tracked down an issue trying to load a literate config file. org-babel-load-file calls org-babel-tangle-file with lang set to "emacs-lisp". This means that it won't tangle any blocks with language set to "elisp", which is equivalent. I can't think of an easy way to fix this since you would need to target both languages. Maybe at very least we could add something to the doc string to draw attention to this limitation.