Como carregar as APIs JS do Google Custom-Search-Engine (CSE) após o carregamento da página?

Estou usando o Mecanismo de pesquisa personalizado do Google com seu novo recurso de preenchimento automático. Quero que todo esse javascript seja carregado APÓS a página em si ser carregada. O código original do Google é este:

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
  google.load('search', '1');
  google.setOnLoadCallback(function() {
    google.search.CustomSearchControl.attachAutoCompletion(
      'some-long-unique-id',
      document.getElementById('q'),
      'cse-search-box');
  });
</script>
<script type="text/javascript" src="http://www.google.com/cse/brand?form=cse-search-box&lang=cs"></script>

Transformei esse código usando tutorial sobre carregamento dinâmico JS para este código:

(function() {
  var goog = document.createElement('script'); goog.type = 'text/javascript';
  goog.src = 'http://www.google.com/jsapi';
  var cse = document.createElement('script'); cse.type = 'text/javascript';
  cse.src = 'http://www.google.com/cse/brand?form=cse-search-box&lang=cs';
  goog.onload = function() {
    google.load('search', '1');
    google.setOnLoadCallback(function() {
      google.search.CustomSearchControl.attachAutoCompletion(
        'some-long-unique-id',
        document.getElementById('q'),
        'cse-search-box');
    });
  };
  var s = document.getElementsByTagName('script')[0];
  s.parentNode.insertBefore(cse, s);
  s.parentNode.insertBefore(goog, s);
})();

Bem, mesmo que eu ache que minha solução funcione (da mesma maneira que o Google alterou o código assíncrono sob demanda do Analytics), isso não acontece. A página carrega bem e, assim que o CSE carrega, a página fica em branco. Algo limpa o DOM, suponho que seja algum tipo de "coisa do Google"? Alguém pode trazer alguma luz sobre esse problema e possivelmente uma solução funcional?

Obrigad

questionAnswers(3)

yourAnswerToTheQuestion