Slides and black and white negatives have very different approaches to their dynamic range. As Godfrey said, the scanner will have a much harder time getting good detail from the darkest areas of a slide, but it will not have the same difficulty with a properly exposed negative. The dynamic range that a black and white negative RECORDS is much greater than a slide, but the dynamic range of a slide ITSELF is higher than a black and white negative. So a scanner can easily get several more stops out of a black and white neg, while it will struggle to get the full dynamic range of a slide, which only records 4 or 5 stops. I hope that makes sense, but it is kind of hard to explain.
If you are getting mediocre results from Acros, there is something wrong with either your lab, your scanner or your technique. Acros has finer grain than any slide film, and has an exceedingly long tonal range.
This would be an example of a properly processed and scanned acros neg:
And an unsharpened crop at 100% at 3200 dpi. It is from a very small area directly over the head of the figure at left:
This scan yields a grainless 30x30 inch print.
As for a magic recipe, I don't really know what to say. I cannot say what is going on with your processing since you have it done by a lab, nor do I know how you scan. All I can say is that when it is done correctly, black and white negatives yield better black and white images than do scanned slides converted to black and white. If you can't get the same results, then you either need to change something, or just go with what works for you.
Finally, I would say that, yes, XP2 is better than most color negative films that I have tried as black and white. It has very very fine grain, particularly for its speed (400), and it has a beautiful tonality. Another film to look at if you are shooting C-41 would be the new Ektar 100, which by all accounts is the finest grained color negative film in history. I am not sure how it compares to XP2, as I have not shot it.
I do not shoot XP2 often, but this is an example:
As is this I believe: