Would really like to be able to decorate my class with an attribute of some sort that would enforce the use of a using statement so that the class will always be safely disp
If you want to ensure your object is always disposed, use a finalizer in combination with IDisposable.
But before you do, read up on IDisposable and finalizers, and be conscious of the fact that you normally don't need them unless your class is doing something like managing the lifetime of an unmanaged resource.
With a finalizer your object will be reclaimed 'eventually' whether wrapped in a using or not. The using statement, which is a convenience for IDisposable, allows deterministic cleanup to take place. The only caveat is that object with finalizers are more expensive to clean up and in general stick around in memory longer while they await finalization.
ref When do I need to implement a finalizer or IDisposable? or technorabble: Using Dispose, Finalizers and IDisposable