To explain the non-browser form issue: The ExecuteAction method is only available in the client side Microsoft.Office.Infopath.dll (the 59KB one).
The server side one (47KB), the one referenced by forms services doesn't have this method. Meaning browser based forms cannot use this code. For browser based forms you'll need to clone a row, or do an ...