While preparing a sample for you on the DataGridViewCellPanel approach, I discovered a bug which I reported in a new tracker entry. Please view it here and follow up on our progress.
You can view the sample application linked in that tracker entry to get the idea on how this can be accomplished. If you don't use VS2010, you can simply Add / Existing Item / Form1 to your VS2008 or VS2005 project as the whole code is included in that form.
Regarding the priority of VWG-9979, then we set the Priority on each tracker entry based on the overall impact the problem has on the individual control and overall framework. The more impact, the higher the proiroty. I see that this entry has not been scheduled yet, so I will send a request to the person responsible for scheduling and we will see where that leads.