Since I'm living in Europe I'm sticking to the European definition of week number which is equivalent to the ISO standard. According to this standard, a week starts on Monday and the first week is the week containing 4 January. Taking this into account you could do therefore do something like
weekNumberISO[date_] := Module[{day0, year},
With[{days = {"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"}},
year = ToExpression[DateString[date, "Year"]] ;
day0 = DatePlus[{year, 1, 4},
{1 - Position[days, DateString[{year, 1, 4}, "DayNameShort"]][[1, 1]], "Day"}];
1 + Floor[DateDifference[day0, date, "Week"][[1]]]]]
For the North-American definition of week number, i.e. week 1 is the week containing 1 January and a week starts on Sunday, you would get something like
weekNumberUS[date_] := Module[{day0, year},
With[{days = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}},
year = ToExpression[DateString[date, "Year"]] ;
day0 = DatePlus[{year, 1, 1},
{1 - Position[days, DateString[{year, 1, 1}, "DayNameShort"]][[1, 1]], "Day"}];
1 + Floor[DateDifference[day0, date, "Week"][[1]]]]]