I just glanced at your code so maybe you are doing something wrong which I didn't see, but here's the problem with DelphiX and alpha blending:
DelphiX' alpha blending is based on DirectDraw which doesn't support hardware accelerated alpha blending. So what DelphiX does it blends the pixels by manipulating the color value of each pixel that is affected by the alpha-blend and does all this in software.
DelphiX's alpha blending is relatively fast but nonetheless it's always going to be extremely slow compared to hardware accelerated alpha blending.
So, here's what you can do:

1. If your backgrounds are not moving, you can pre-alpha blend the foreground and background on startup and store it in an off-screen buffer. That way you'll only have to do the alpha blending once.

2. You can use hardware acceleration by using DelphiX' 3D functions for 2D drawing (should be possible) or

3. You can use a different set of DirectX wrapper classes with built-in support for hardware accelerated alpha blending. e.g. PowerDraw, Omega, GameVision SDK or *cough* xcess (see my signature).

4. Maybe somebody else can tell you how to speed up things