Fix ScopedContext to restore original context
CRITICAL FIX: ScopedContext destructor was empty, leaving wrong context
active after cross-device operations. This caused subsequent operations
on the queue to execute on wrong device context.
Now properly saves and restores the original context, ensuring context
state is preserved across ScopedContext usage.