Ok I finally found the point where it failed:
can.view
returns a DocumentFragment which seems to work in the initial build.
In the L.Popup
source I found a line of code where they match the type against string - a DocumentFragment is handled as an object.
I solved it by using can.view.render("leads/popup", viewOptions)
, which returns me a string with rendered HTML.