[Toolkit.Graphics] Removed garbage generation from SpriteBatch.End call

In previous version, some parameters were captured in a closure object and this caused delegate object ("new Action<IntPtr>(...)") to be created for each call.
I have simply copied the code from Buffer.SetDynamicData - this avoided the creation of one delegate and two closure methods.
Related forum discussion is here: http://www.sharpdx.org/forum/4-general/2756-toolkit-object-allocation-in-spritebatch
Even if this micro-optimization is not so important - it will reduce garbage generation for scenarios that rely heavily on SpriteBatch usage.