What i'll suggest you
  1. measure your clock frequency and make sure it met the PS2 requirement
  2. record what's happening when you boot your PC and a regular PS2 Keyboard is attached
  3. make sure you timing is right... and... erm... make the sure than PAUSEUS really needed between your data
  4. go back to step 2 and compare a real PS2 data against what you're sending
  5. carefully read the PS2 protocol and see if you're allowed to use SHIFTOUT AS-IS

It really looks easier than it is actually... trust me...