Following is a response from DHS staff member, Tom Pullum:
It is easiest to do this merge using the respective variables for cluster, household, and line number. The following Stata code works for me. Good luck!
* Merge IR and WS files for Egypt 1995 DHS
* specify workspace
cd e:\DHS\DHS_data\scratch
* Prepare the WS file
use "...EGWS39FL.DTA", clear
gen cluster=psuseg
gen hh=hnumber
sort cluster hh line
save WStemp.dta, replace
* Prepare the IR file
use "...EGIR33FL.DTA", clear
* restrict to women who completed the women's status interview
tab swstatus
tab swstatus, nolabel
keep if swstatus==1
gen cluster=v001
gen hh=v002
gen line=v003
sort cluster hh line
* Merge the files
merge cluster hh line using WStemp.dta
tab _merge
* all cases merge ok
drop _merge