Nope. I have $77 in Microsoft account credit and the game won't allow me to use it to purchase diamonds. The new Xbox live website ONLY allows for payment with credit cards, and doesn't allow you to use MS credit for anything. I have no idea why MS's payment systems are so jacked up and idiotic.
Yes you earn a diamond every time you beat a boss and each time you level up. Make sure you save the diamonds though because you'll need to spend them on the final upgrade for your soldiers. Don't waste any diamonds on buying things like buildings etc