When I first started printing on my Mendel I found it difficult to get the top layer infill solid and meeting the edges. It behaved differently to HydraRaptor, but since it was a different bot and extruder and I had also changed to a different type of ABS and updated Skeinforge it was hard to work out what the problem was.
The first problem I identified was backlash caused by the filament dragging on the carriage. I fixed that by switching from basket feed to spool feed, see hydraraptor.blogspot.com/2010/07/bit-of-drag.html. That made a big improvement but I also set the "Infill Perimeter Overlap" ratio to its default value of 0.15, where previously I had used 0, and also increased the amount of plastic above the theoretical 100% value.
That is the way it stayed until very recently when I made a discovery about Skeinforge. A new parameter had appeared when I updated: "Infill Interior Density over Exterior Density" ratio, which defaults to 0.9. This seems like a good idea to make inner solid layers a bit less dense. It helps if the bottom layer is a bit too low by giving somewhere for the excess plastic to go. As I was using a little excess plastic anyway it seemed a good idea.
I had noticed that some outer surfaces are never well filled even when other surfaces on the same object are. Here is an example in the bottom of the well in this bracket.
I only realised recently that this was because the 0.9 is applied to some exposed surfaces, not just to internal ones. I set the value to 1.00 and things got a lot better. Not only does it fix the problem above, but it helps to make the other top surfaces solid. I normally use three solid layers to get a good surface on top of sparse infill. But with the first two at only 90% the top layer is still lacking in plastic. That is why I had to use a higher flow rate than theory predicted. Once I got rid of this parameter I could reduce the flow rate and still get a solid top surface. In fact, I can get a reasonable top surface with only two solid layers now.
Another side effect of having the flow rate too high to compensate for the layers below being only 90% was that the top layer was being forced in. When the infill goes from two different directions and meets in the middle I was getting a ridge because the plastic would be being forced into a channel that was a bit too small for it.
Yet another issue I had noticed was that some side walls were inexplicably lumpy. I.e. not in positions where the filament starts or stops. Examining the slices I realised that it was caused by the infill displacing the outline. This was because I had a 15% overlap. Since I made the inner solid layers solid I found I don't need this any more and those bumps have gone away.
So in summary I was using excess flow rate and infill overlap to compensate for inner solid layers (and some outer ones) not being 100% solid. The side effects were lumpy walls and ridges on the top surface.