EMF/WMF形式のイメージをドラッグ&ドロップでWORDやEXCELに貼り付ける

通常のオブジェクトの場合の方法は、「ドラッグ & ドロップを実装したい」で示しました。
しかしその方法はEMF/WMF形式のイメージの場合うまくいきません。.NET FrameworkのDataObjectクラスがEMF/WMFをサポートしていないためです。
正攻法は、Windows Native APIを用いて、IDataObject COMインターフェースをサポートした独自のDataObjectを実装することです。 しかし、これはかなりやっかいです。簡便な代替方法として、ファイル経由で実現する方法を紹介します。
次のように、一時的にEMF/WMFファイルを生成し、それを利用します。
※ WORDは問題ないのですが、なぜかEXCELはBitmapも含めていないとうまくいかない模様。理由は不明です。
// ドラッグ元: ドラッグを開始する
private void srcPictureBox_MouseMove(object sender, MouseEventArgs e)
{
    if (e.Button == MouseButtons.Left)
    {
        string tempPath = System.IO.Path.GetTempPath() + "temp.emf";
        Bitmap bitmap = new Bitmap(1, 1);
        Graphics g = Graphics.FromImage(bitmap);
        IntPtr hDC = g.GetHdc();
        RectangleF rect = stampInfo.GetFrameRect(pixelSize);
        Metafile meta = new Metafile(tempPath, hDC, rect, MetafileFrameUnit.Pixel, EmfType.EmfPlusDual);
         :
         : (Metafileの描画処理)
         :
        pictureBox.Image = meta;
        g.ReleaseHdc();
        g.Dispose();
        bitmap.Dispose();
        meta.Dispose();

        DataObject dataObj = new DataObject("");
        string[] fileNames = { tempPath };
        dataObj.SetData(DataFormats.FileDrop, fileNames);
        dataObj.SetData(new Bitmap(meta));
        ((PictureBox)sender).DoDragDrop(dataObj, DragDropEffects.Copy);
    }
}