Hola:
La creación dinamica de controles de formularios es de las cosas más problemáticas, ya que muchas cosas no son fáciles de asignar/modificar sobre todo lor razones de seguridad...
Una de las formas que parece que funciona bien en los navegadores que he probado es clonar nodos... por ejemplo dentro de alguna capa oculta:
<div style="display: none">
<input type="checkbox" id="ch_oculto" onclick="checkboxClick()" />
</div>
...
nuevoCheck = document.getElementById("ch_oculto").cloneNode(tru e);
nuevoCheck.id = nuevoId;
...
Saludos