Как минимум надо приводить интерфейс как-то вот так.
c := profiler.(*Profiler).GetCounter()
Но тут есть еще несколько тонких моментов:
1) если нужны копии, то почему в контекс кладется адрес, а не копия? (я не запускал, просто заметил)
2) надо бы лочить каунтер при изменении