Hola:
El atributo type no es "negociable"... Tal vez puedes rescatar los atributos "importantes" como name y value, asignárselos a un elemento nuevo (createElement) y hacer el "cambiazo"... pero no es fácil de implementar (creo que sería mejor un campo oculto...)
Saludos