WMF to EMF conversion problems

I'm having problems trying to work around a problem with using WMF
files in a Delphi DLL. EMF files work fine, but WMF files get
distorted. The below code illustrates the problem:

Create a form with two TImage's on it (Image1 and Image2).

procedure TForm9.Button1Click(Sender: TObject);
begin
        // Load a WMF file (EMF are OK)
        Image1.Picture.LoadFromFile('D:\ART\TRUCK.WMF');
        // Report size info
        ShowMessageFmt('Graphic 1 Size (%d, %d)',
                 [Image1.Picture.Width, Image1.Picture.Height]);
        // Copy to clipboard
        Clipboard.Assign(Image1.Picture);
        // now, paste into other image
        Image2.Picture.Assign(Clipboard);
        ShowMessageFmt('Graphic 2 Size (%d, %d)',
                 [Image2.Picture.Width, Image2.Picture.Height]);
end;

This code will also cause the size to fail:
procedure TForm9.Button2Click(Sender: TObject);
var
        Data: THandle;
        Palette: HPALETTE;
begin
        ShowMessageFmt('Graphic 1 Size (%d, %d)',
          [Image1.Picture.Width, Image1.Picture.Height]);
        Palette := 0;
        Data := CopyEnhMetaFile(Image1.Picture.Metafile.Handle, nil);
        Image2.Picture.Metafile.Handle := CopyEnhMetafile(Data, nil);
        ShowMessageFmt('Graphic 2 Size (%d, %d)',
           [Image2.Picture.Width, Image2.Picture.Height]);
end;

The above code reports DIFFERENT width and height values for the two
images, even though the second one is a clone of the first. It would
be OK if the aspect ratio of the two stayed the same, but in the
second image, the aspect ratio is not even close to what it should be.

The problem is in the way the Width and Height are calculated. When
the WMF file is first read, the width and height are calculated based
on data in the WMF header, but in the assignment to the Handle
property, the Width and Height are calculated on data from the ENH
metafile header. I can't figure out a work around. Anybody with any
ideas or suggestions?

Thanks,

David Block
dbl...@vdn.com