Well, the only that'd be a problem is if DB67 is not the final byte of the pointer table and the start of the text. In that case, the pointer table would end at DB66.
Also, your base pointer is probably wrong. Pointers point to a section of the PRG-RAM where the text resides within the NES memory map. PRG-RAM and ROM offsets often times don't match up and you need to add or subtract from the base pointer to get it dump from the right ROM offset. Because you're only really adjusting for the header, it's probably only starting at 9B67 in the ROM and an extra 4000 bytes needs to be added. I'm just guessing here though.