hdiff fails to diff SDS's

I just wanted to check that I'm not doing something stupid here. I'm trying to compare an SDS in two HDF-EOS files. Basically, I'm creating one file and adding the new SDS (file_a.hdf) and comparing it to another file that I've downloaded (file_b.hdf). Here's the command I'm using:

hdiff -d -b -v SDS_NAME file_a.hdf file_b.hdf

Due to the -b option above, for file_a.hdf, I see the following related to SDS_NAME:
720 1198 mod04/Data Fields/SDS_NAME

And for file_b.hdf:
720 135 mod04/Data Fields/SDS_NAME

Then later:
         x mod04/Data Fields/SDS_NAME
  x mod04/Data Fields/SDS_NAME

And no comparison is performed on SDS_NAME. From the output, it seems that hdiff is not recognizing that these two SDS are the same. They are at different indexes (SDS_NAME is at index 72 in file_a.hdf and 53 in file_b.hdf). There are some SDS's that are the same in the two files and can be compared. The difference seems to be that ones that I add myself are not comparable. SDS_NAME in file_a.hdf is the same type and size as SDS_NAME in file_b.hdf. There are some differences in the attributes that I've attached to the SDS -- e.g. long_name is slightly different. Also, SDS_NAME in file_b.hdf is compressed while uncompressed in file_a.hdf.

Is this the expected behavior? Is there a way to work around this so that hdiff will compare SDS_NAME in file_a.hdf and file_b.hdf? In general, what are the criteria used to determine whether two SDS's are comparable within hdiff?