hai provato con background-position? Ti permette di centrare verticalmente il background (nel tuo caso da abbinarsi al background-repeat: no-repeat), sempre che tu abbia bisogno di una centratura verticale.

Se invece devi modificare la sua posizione di pochi pixel, posso dirti che io di solito mi rassegno ad aggiungere qualche pixel trasparente all'immagine, per evitare di aggiungere nuovi elementi al codice xhtml.

EDIT: ti ho risposto senza averlo mai effettivamente fatto, ho provato e ho visto che bisogna anche impostare il valore fixed al background, cosa piuttosto scomoda... sono desolato