The IDirectDrawSurface7 object(like all DX objects) contains no functionality, whatsoever, it is just an abstract interface. The only people who create descendent classes from it are the implementers of DX. To do what you want, you have to inherit from an internal DirectX object, which is completely unknown to you, the application developer.
To create a wrapper, you'd have to do something like the following:
class CSurface
{
private:
LPDIRECTDRAWSURFACE7 m_pdds;
DDPIXELFORMAT m_ddpf;
. . . // Whatever else
public:
CSurface();
~CSurface();
Create(...);
Blt(...);
. . . // Whatever else
};