Here's how you can programatically get the workflow history for a given workflow instance on an SPListItem. The data returned is the same seen on the Wokflow Status page.
Microsoft.SharePoint.Workflow.SPWorkflow workflow =
spListItem.Workflows[0];//0 is most recent
SPList historyList = workflow.HistoryList;
string notesQuery = "<Where><Eq><FieldRef Name=\"WorkflowInstance\"/><Value Type=\"Text\">"
+ workflow.InstanceId.ToString() + "</Value></Eq></Where>";
SPQuery qHistory = new SPQuery();
qHistory.Query = notesQuery;
SPListItemCollection historyItems = historyList.GetItems(qHistory);