I think I have resolved the issue, although nothing seemed to work because the events don't work quite right in a Palette.
First, I changed the location at which I updated the drawing. Instead of doing it in EndCellEdit I created another function to update the drawing with the changed value and eliminated the EndCellEdit event.
I implemented the EditingControlShowing event and added KeyPress, PreviewKeyDown and LostFocus to the edit control
In the PreviewKeyDown event I filtered for the enter key. If the user presses the enter key, then call the function to update the drawing (all edits on that field are done).
In the KeyPress event I filtered all values that were not valid for numeric input, this solves having to parse the data after it has been entered.
In the LostFocus event for the textbox, I format the value in the textbox (at this point the edit textbox is still active) and manually call PreviewKeyDown passing the Enter key (this event DOES fire).
So, the user edits a value in the grid, if the move the mouse off the palette, the TextBox loses focus it calls the PreviewKeyDown with enter key, that submits enter, fires the function to update the drawing and all is right with the world.