That is because there is no element with id 'btnPrint' in your html.
Even if you write id="btnPrint" in your server control (button) it wont end up with that same id when the page is rendered.
be ware of the order in your javascript
function PrintReport() {
var btnId = '<%=btnPrint.ClientID %>';
document.getElementById(btnId).style.visibility = 'hidden';
window.print();
}