That looks like an ok recipe to me. With just quarter of a pound of roast barley, it will be pretty subtle on the roasty flavors, but it does have a reasonable amount of chocolate to make up for that.
Yes, it would be reasonable to swap Special B for a very dark (100+) crystal.
Amber extract is usually a mixture of pale base malt with some proportion of medium crystal (40 or 60), plus occasionally some Munich malt. Dark extract, on the other hand, contains some amount of black malt. Trouble is, you don't generally know exactly what is in either of them or what the proportions are, which makes it hard to figure out how they will interact with your other specialty grains.
If you're worried about exactly predicting the color, I would actually go the other way: replace the amber extract with pale, then add 12 oz of crystal 60 to compensate. Then you can enter your ingredients in Beer Smith to see what color it predicts, and compare that against the typical range for the style you are making. If it is wrong, you can adjust the color of the crystal, or tweak your roast barley quantity, until you get the outcome you are looking for.