I solved the problem. There is a mismatch between the printer name in the Windows 7 inf file and the one on the XP computer on which the printer is installed.
It's not hard to fix and this may not seem intuitive at first, but here is the solution:
The printer named "Brother HL-1440 series" is what Windows 7 sees when it locates the printer on the network. You can see the name by going to the XP box and looking at the driver name on the Advanced tab for the Printer properties dialog:
Start/Printers and Faxes/select printer/right-click/properties/Advanced
That name is defined in the printer driver inf file on the target computer. I looked in that file and saw the following list:
[DriverName]
"Brother HL-1230 series" = BROHL123.PPD,LPTENUM\BrotherHL-1230_serieE46E,BrotherHL-1230_serieE46E
"Brother HL-1440 series" = BROHL144.PPD,LPTENUM\BrotherHL-1440_serie0BD1,BrotherHL-1440_serie0BD1
"Brother HL-1450 series" = BROHL145.PPD,LPTENUM\BrotherHL-1450_serie9BDC,BrotherHL-1450_serie9BDC
"Brother HL-1470N series" = BROHL147.PPD,LPTENUM\BrotherHL-1470N_seri8521,BrotherHL-1470N_seri8521
Now I needed to see what Windows 7 was trying to use. I downloaded the Brother HL-1440 uninstall tool and ran it on the Windows 7 side. I selected HL-1440 in the list, clicked the Search Inf button, then selected the file named C:\Windows\INF\oem21.inf and clicked View. The name in that file is:
"Brother HL-1440" = MS_BRH1440U.GPD,BROTHERHL-1440_SERIE0BD1,Brother_HL-1440_USB,Brother_HL-1440 ; Hardware ID
The XP machine defines the printer as "Brother HL-1440 series" while the Windows 7 name defines it as "Brother HL-1440". I edited the XP inf file in notepad and duplicated the line for "Brother HL-1440 series" and renamed the printer to "Brother HL-1440" so it looked like this:
[DriverName]
"Brother HL-1230 series" = BROHL123.PPD,LPTENUM\BrotherHL-1230_serieE46E,BrotherHL-1230_serieE46E
"Brother HL-1440 series" = BROHL144.PPD,LPTENUM\BrotherHL-1440_serie0BD1,BrotherHL-1440_serie0BD1
"Brother HL-1440" = BROHL144.PPD,LPTENUM\BrotherHL-1440_serie0BD1,BrotherHL-1440_serie0BD1
"Brother HL-1450 series" = BROHL145.PPD,LPTENUM\BrotherHL-1450_serie9BDC,BrotherHL-1450_serie9BDC
"Brother HL-1470N series" = BROHL147.PPD,LPTENUM\BrotherHL-1470N_seri8521,BrotherHL-1470N_seri8521
I then updated the driver on the XP machine to use the new name. Now that the names match I can use the Add Printer wizard to add the driver and all is well.
You could also duplicate the line in the Windows 7 file and edit the copy so it matches the name on the XP box. It's up to you which side you edit, but I was hesitant to mess with Windows 7 system files.
What a pain - you would think some sort of hardware ID would be used rather than a string value to identify a hardware device. Anyway, after nearly six months of off-and-on battling I can print.