If the includeRecordDetails flag in DuplicateRuleHeader is set to
false, findDuplicates() only returns the record IDs of the matching
records. Otherwise, findDuplicates() returns all the fields specified
in the primary CompactLayout associated with the target object
So I think I figured it out.Under the DuplicateResult class there is a method called Datacloud.match. This method identifies the matching or different fields defined in the Matching Rule/Matching criteria. In other words, the only fields returned by the Duplicateresults are fields that are defined in the rules. You can not return a field which is not part of it. I included BillingState in the matching rules, and now I am able to access it.