Non saprei, ho fatto una prova e a me funziona:

codice:
 <script src="http://code.jquery.com/jquery-1.8.3.js"></script>

<script type="text/javascript">
$(document).ready(function(){

$('input[type="checkbox"]').click(function(){

$('input[type="checkbox"]').attr('checked', false); 
$(this).attr('checked', true); 
});

});
</script>


<input type="checkbox" value="" checked> 
<input type="checkbox" value="" checked> 
<input type="checkbox" value="" checked> 
<input type="checkbox" value="" checked>
L'unica cosa di diverso è che io uso la funzione "click" mentre tu la funzione "on"