Там будет нет разница в производительности - вызов метода расширения
var result = foo.MyTransform(rotation);
будет просто преобразован компилятором в:
var result = My.MyTransform(foo, rotation);
Это не значит, что методы расширения должны использоваться везде - но похоже, что это подходящий вариант использования, если только вы не можете на самом деле сделать его методом экземпляра в Rotation :
var result = rotation.Apply(foo);
(Кроме того, я настоятельно призываю вас пересмотреть свои имена, чтобы следовать соглашениям об именах .NET.)