Once it's an ExecutionBlock, there's no straightforwards way to turn it into a snapshot. For the schema component, assuming this is an ExecutionBlock which does have all the information in that you need to create an entire database (i.e. it was produced by synchronizing a database to an empty database), you should be able to do the following:
1) Save the ExecutionBlock as a file (with the SaveToFile method) in its own folder
2) Register that folder as a script database
3) Save that script database as a database snapshot
I don't guarantee that this will always work, but it's probably your best option if you don't want to script it into a live database.
You won't get the data component that way though, because we haven't implemented read-from-scripts for data yet.
How did you end up with an ExecutionBlock that you want to persist as a database snapshot? Maybe you could save something from earlier in the process that would be easier to turn into a snapshot?