I\'d like to be able to implicitly convert between two classes which are otherwise incompatible.
One of the classes is Microsoft.Xna.Framework.Vector3,
No, you can't. The implicit operator has to be defined as a member of one of the classes. However, you can define an extension method (your example didn't work as extension methods have to be in a public static class).
public static class ConverterExtensions
{
public static Vector ToVector (this Vector3 input)
{
//convert
}
}