Me encontré este artículo http://www.thecssninja.com/css/custom-inputs-using-css, que muestra como dar estilo a radio buttons y checkboxes usando CSS sin utilizar javascript. Como casi siempre, IE8 e inferiores se quedan por fuera debido a la falta de soporte de la pseudoclase :checked. Sin embargo, es una técnica muy útil para embellecer nuestros formularios, yo ya la estoy usando.
Para todos los que les gustan las interfaces del iPhone, usando esa técnica, podemos convertir un checkbox normal en un switch estilo muy parecido al que usa iOS.