Restrict delete operation on a node referenced by another node
I believe you are invoking the hook incorrectly - according to the API page for hook_delete():


  This is a node-type-specific hook, which is invoked only for the node
  type being affected


Further disccussed on the Node API Hooks Page:


  Node-type-specific hooks: When defining a node type, hook_node_info()
  returns a 'base' component. Node-type-specific hooks are named
  base_hookname() instead of mymodule_hookname() (in a module called
  'mymodule' for example). Only the node type's corresponding
  implementation is invoked. For example, poll_node_info() in
  poll.module defines the base for the 'poll' node type as 'poll'. So
  when a poll node is created, hook_insert() is invoked on poll_insert()
  only. Hooks that are node-type-specific are noted below.