It appears the most precise answer is actually pretty simple:
(if (it = -1) then (52) else (it + 1)) of ((current date - (january 02 & current year)) / week)
It appears to be accurate for every day of 2017. Note, January 1st is technically week 52 of the previous year.
You can use the following relevance to compare a years worth of answers for the 3 different pieces of relevance:
(it,(if (it = -1) then (52) else (it + 1)) of ((it - (january 02 & current year)) / week), ((it / week) + 1) of (it - (first (current day_of_week) of (january & current year))) as string | "Error", (1 + preceding text of first " " of ((((it - ((january 01 of (year of it as integer))-day)) of it) / 7) as string) as integer) as string | "Error") of ((date "01 Jan 2017") + (it*day)) of (integers in (0,364))
Sample of Answer:
Q: (it,(if (it = -1) then (52) else (it + 1)) of ((it - (january 02 & current year)) / week), ((it / week) + 1) of (it - (first (current day_of_week) of (january & current year))) as string | "Error", (1 + preceding text of first " " of ((((it - ((january 01 of (year of it as integer))-day)) of it) / 7) as string) as integer) as string | "Error") of ((date "01 Jan 2017") + (it*day)) of (integers in (0,364))
A: ( Sun, 01 Jan 2017 ), 52, 0, Error
A: ( Mon, 02 Jan 2017 ), 1, 0, Error
A: ( Tue, 03 Jan 2017 ), 1, 0, Error
A: ( Wed, 04 Jan 2017 ), 1, 0, Error
A: ( Thu, 05 Jan 2017 ), 1, 1, Error
A: ( Fri, 06 Jan 2017 ), 1, 1, Error
A: ( Sat, 07 Jan 2017 ), 1, 1, 2
A: ( Sun, 08 Jan 2017 ), 1, 1, 2
A: ( Mon, 09 Jan 2017 ), 2, 1, 2
A: ( Tue, 10 Jan 2017 ), 2, 1, 2
A: ( Wed, 11 Jan 2017 ), 2, 1, 2
A: ( Thu, 12 Jan 2017 ), 2, 2, 2
A: ( Fri, 13 Jan 2017 ), 2, 2, 2
A: ( Sat, 14 Jan 2017 ), 2, 2, 3
Then you can compare those to this site: https://www.epochconverter.com/weeks/2017