In DBPro you have to consider the best option - because since DBPro uses DX9, it's sprites are 3D now, DBClassic has 2D sprites so pixel perfect collision works on that.
Personally I prefer to use line based collision with sprites, because if you take 2 sprites and rotate them, then working out pixel collision with that can be really slow, if you can even get that working - that snippet does not allow for rotation.
I use a segmented line around the sprite, stored as the angle and radius from the centre of the sprite. This covers 2 bases, rotation, and scaling - with my technique, checking collision with rotation and scaling is actually standard. One other benefit is that it's possible to ascertain which line gets shot, or collides. This might allow you to detect head shots, or decide how much to spin the sprite, factoring centre of gravity and all that stuff in as well. A space ship might have really strong legs for landing, but land on the wing and it's curtains. I think it facilities proper game creation, nobody actually uses pixel perfect collision all that much - it's far more likely to be box collision or line collision.
I keep meaning to find the time to make an example, will try and do that over the next couple of weeks. I only used it in 1 game, a sidescrolling shooter, and was accurate as hell. One neat thing is that it's quick and easy to detect circle line collision too. IMO line collision is pretty much all win, more people should adopt it, it takes a horrible problem and provides a somewhat complex solution - but it has benefits all over the place, that pixel perfect collision could only dream of.