Все букмарклеты, которые я когда-либо делал, напрямую вставляются в DOM главной страницы.Весь код находится внутри пространства имен для этого букмарклета, поэтому загрязнение DOM сведено к минимуму, и, конечно, есть проверки, чтобы убедиться, что нет конфликтов с существующими именами переменных.
Причина вставки вDOM основного документа заключается в том, что он делает все проще - редко есть веская причина, чтобы сделать это сложнее для себя, чем должно быть:)
Но, конечно, это зависит от ваших целей.