For DDL you may need to use EXECUTE AS in the procedure definition. Your original post asked about DML.
Just... why procedures that alter the DB structure?
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability