Δεν μπορώ να σου πω στα σίγουρα μια που χρησιμοποιώ VS2008 για τις εφαρμογές μου σε DirectX,αλλά η λύση που ακολούθησες μου φαίνεται η καλύτερη.Όσον αφορά το σφάλμα που λαμβάνεις (buffer overflow exception) δες αν έχεις τσεκαρισμένο το "Break on memory leak" στο DirectX Control Panel και έλεγξε μήπως συσχετίζεται με αυτό.
Μια άλλη λύση που θα μπορούσες να σκεφτείς είναι να κάνεις debug την εφαρμογή σου με το PIX,το εργαλείο που παρέχεται μαζί με το DirectX SDK,ίσως περιστασιακά σε βολέψει.