Сценарий конвейера агрегации $lookup
NOW работает непосредственно с массивом (в версии 3.3.4).
Смотрите: поиск между локальным (множественным) массивом значений и внешним (одиночным) значение
Ваш код в основном правильный, за исключением того, что вы вставляете элемент h1 перед клонированным шаблоном.
Ваш вопрос предполагает, что вам нужно создать элемент внутри клонированного узла. Вот некоторый модифицированный код, который будет работать для вашей ситуации:
var clon = template.content.cloneNode(true);
clon.childNodes[1].prepend(h1, clon.childNodes[0]);
document.body.appendChild(clon);
То, что мы делаем, - это получение дочернего узла клонированного элемента и затем добавление (или добавление, если вы этого хотите) элемента h1 в него.
Вот JSFiddle
Надеюсь, это поможет.