2 very important points when populating a crystal report from a DataSet:
1) When designig the report, the data source has to be ADO.NET XML (You have to create an XML file from the DataSet which is going to be used to populate the report)
2) When you save the report, you must make sure the option "Save Data with Report" is NOT checked (Located on the file menu under the Save option) ...
From my experience, if those two things are not done the report will not work.